Files
MyClub/diagrams/backend-jobs.mmd
T
Tomas Dvorak c941313fd5 dev day #92
2025-11-14 15:53:12 +01:00

43 lines
1.4 KiB
Plaintext

%%{init: {
'theme': 'forest',
'flowchart': { 'curve': 'linear' },
'themeCSS': '.edgePath path { stroke-dasharray: 6 4; animation: dash 20s linear infinite; } @keyframes dash { to { stroke-dashoffset: -1000; } }'
}}%%
flowchart LR
classDef job fill:#ecfdf5,stroke:#16a34a,color:#064e3b;
classDef svc fill:#e0f2fe,stroke:#0284c7,color:#0c4a6e;
classDef ext fill:#faf5ff,stroke:#a855f7,color:#6b21a8;
classDef api fill:#eef2ff,stroke:#6366f1,color:#312e81;
subgraph jobs["Background Jobs & Services"]
direction TB
j_prefetch["Prefetcher (StartPrefetcher)\nFetches public endpoints periodically"]:::job
j_news_sched["NewsletterScheduler"]:::job
j_news_auto["NewsletterAutomation\nWeekly, match alerts, blog notifications, results"]:::job
j_sweep["SweepstakesScheduler\nFinalize & pick winners"]:::job
j_err_auto["ErrorReview Auto-Register\nRegisters backend in monitors"]:::job
j_filetrk["FileTracker\nScan/uploads tracking"]:::svc
j_logo["LogoCache"]:::svc
j_cache["CacheService"]:::svc
j_imgopt["ImageOptimizer"]:::svc
j_umami["UmamiService"]:::svc
end
api_public["/api/v1 (public)"]:::api
smtp["SMTP Provider"]:::ext
err_recv["Error Receiver: errors.tdvorak.dev or local :8083"]:::ext
facr["FACR Scraper/API"]:::ext
umami["Umami Server"]:::ext
j_prefetch -.-> api_public
j_news_sched --> j_news_auto
j_news_auto --> smtp
j_sweep --> smtp
j_err_auto --> err_recv
j_umami <---> umami
j_filetrk --> j_cache
j_imgopt --> j_cache
j_logo --> j_cache