/ / Odloženie spracovania v Pythone - python, skrútené, boto, gevent, eventlet

Odložiť spracovanie v Pythone - python, skrútené, boto, gevent, eventlet

Snažím sa písať udalosti neblokujúcim spôsobom, aby nedošlo k spomaleniu niektorého z našich existujúcich procesov. Zdá sa, že existujú dve dostupné možnosti:

Existujú aj iné možnosti. S týmto má niekto skúsenosti?

Pozadie: Plánujeme písať udalosti do Amazonky CloudWatch služby a som znepokojený oneskorením odvykonanie žiadosti PUT. V skutočnosti ma to veľmi nezaujíma o to, že prídem o pár PUT, ak sa tým zmení odpoveď (udalosti píšeme na účely varovania a všetky budú vymazané aj po týždni).

odpovede:

1 pre odpoveď č. 1

Ak sa logovanie hodí do vašej aplikácie a znie topreto by to malo byť jednoduchšie ako použitie skrútené. Mohli by ste sa prihlásiť do bezpečného frontu vlákien v pamäti a nechať sa odtiahnuť samostatným vláknom (alebo niekoľkými) a tlačiť do cloudu.

To znamená, že skrútenie môže byť rýchlejšie alebo aspoň škálovateľnejšie, ale najmä ak to neviete, so strmšou krivkou učenia.

Ak sa vlákna priblíži k limitom prístupov, môžetevždy prepínajte svoje prihlasovacie meno tak, aby sa používalo skrútené, bez toho, aby ste zmenili svoje rozhranie na aplikáciu, takže by som začal, s jednoduchým prístupom a zakrytými základňami.


1 pre odpoveď č. 2

To by bolo triviálne s gevent (proste urobiť PUT v samostatnej zelenej a mať zásuvky záplatované).