KamoCRM

Promemoria del calendario invia spostare il thread del programmatore condiviso

PerformanceEmailService
Shipped
23 settembre 2026 alle ore 07:50 UTC
Author
Kamo
Commit
90509f4

Il thread single scheduler predefinito di primavera è condiviso da ogni metodo @Scheduled in questo servizio — l'impulso della campagna 1-secondo, la zecca del motore a goccia, e ReminderSchedulerService proprio 60-secondo spazzare tra circa una dozzina di altri. processRemindersLocked ha inviato ogni due promemoria email/popup/ sms, una chiamata di blocco alla volta, su quel thread condiviso: una spazzata con diversi promemoria dovuti tenuti e tutto il resto in programma sul baccello, per tutto il tempo che l'intero lotto ha preso per inviare. L'invio di ogni promemoria è ora eseguito su un piccolo pool di filetti fissi (4 lavoratori, denominato calendar-reminder-sender), lo stesso principio DripEngine si applica già consegnando il suo intero pass a un filo di lavoro — applicato qui per promemoria anziché per passaggio, dal momento che la parte lenta è la bloccare SMTP / notifica inviare piuttosto che il DB spazzarsi. Il filo di chiamata aspetta ancora per l'intero lotto (abbondato da un timeout di scarico di 90s) prima del processoRemindersLocked restituisce, che è che mantiene il contratto 'email-calendar-reminders' che copre l'intero passaggio: un contratto di locazione rilasciato mentre gli invii erano ancora in volo altrove avrebbe lasciato un altro pod prendere i due promemoria SAME e inviare due volte. Ciò che cambia è solo quanto tempo ci vuole l'attesa — fino a quattro volte meno, mai peggio di il vecchio anello sequenziale. ****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************** piscina piuttosto che il thread di chiamata, e che la chiamata blocca ancora fino a quando ogni invio ha finito.

All changes

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing