Le attività pianificate caricano Application.cfc nello stesso modo delle pagine Web? Abbiamo un'attività che viene eseguita ogni notte e deve utilizzare un servizio cfc caricato nell'applicazione. L'ambito dell'applicazione esiste nello stesso modo in cui avviene quando si chiama una pagina Web standard? Ci sono differenze o trucchi a cui prestare attenzione?Le attività pianificate caricano Application.cfc nello stesso modo delle pagine Web?
risposta
L'utilità di pianificazione CF effettua una chiamata HTTP all'URL specificato nell'attività, quindi vengono applicate tutte le regole standard. Application.cfm/application.cfc viene eseguito, l'ambito dell'app esiste e così via.
L'unica cosa, a prima vista, da tenere a mente è che lo scheduler stesso non riconosce gli errori, quindi è necessario scrivere l'attività in modo tale che registri, e-mail, ecc. In caso di errore. E, durante i test, probabilmente in caso di successo.
Modifica: Sergii ha notato qualcosa che avevo trascurato. Lo scheduler non mantiene i cookie. Funziona più come un ragno. Pertanto, qualsiasi cosa nella sessione o negli ambiti client o scritti sui cookie non verranno effettivamente archiviati e andranno persi la volta successiva che viene eseguita l'azione.
L'unica differenza è che viene creata una nuova sessione per ogni richiesta. – Sergii
Questo è divertente, ho avuto risultati incoerenti utilizzando le variabili dell'ambito dell'applicazione impostate da Application.cfc in un'attività pianificata. Sulla base di questo, ho intenzione di riesaminare quei problemi, che ho già lavorato in precedenza. – Jay
Ho visto anche stranezze, motivo per cui tendo a rendere le mie attività pianificate autosufficienti. Penso che alcuni dei metodi non vengano attivati quando si tratta di una richiesta del browser headless, come OnSessionStart() o OnRequestStart(). – ale