Skip to content

Feature/schedule task settings#41

Open
DOCpft wants to merge 8 commits into
medods:developfrom
DOCpft:feature/schedule-task-settings
Open

Feature/schedule task settings#41
DOCpft wants to merge 8 commits into
medods:developfrom
DOCpft:feature/schedule-task-settings

Conversation

@DOCpft
Copy link
Copy Markdown

@DOCpft DOCpft commented Apr 22, 2026

Реализована фича создания периодических задач (реализовано через RRule, но заложена возможность расширения под Cron, custom etc)

DOCpft and others added 8 commits April 20, 2026 16:43
…овал стратегию с RRule, еще возможно сделаем кастомную, с кронами не буду. +2 миграции, изменена модель, DTO
… задач с родительскими, индекс и каскадное удаление
…ь ограничение накладывается на дату с учетом времени (TIMESTAMP). Добавлена логика для определения следующего запуска создания инстанса задачи. Исправил критические проблемы с производительностью в воркере:

1. Ищем теперь чисто периодические задачи
2. Вычисляем время создание задачи не на 24 часа вперед а только на текущий момент.
3. Вместо проверки существования инстанса, добавил ограничение на parent_id, scheduled_for
…бавлен DTSTART, чтобы бралось не текущее время. Теперь ежедневные, еженедельные задачи создаются, как положено, а не ежеминутно как было (шаблон RRule ни на что не влиял, т.к. rrule-go вел отсчет от now, а не от CreatedAt)
Логика разнесена по двум usecase - process_recuring и create_instance, periodic_worker вынесен в internal/worker как фоновый процесс и в main.go - запускаем Start, как горутину
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant