Gearman (+ Supervisor) zkušenosti rubrika: Programování: Jiné

7 Michal Kleiner
položil/-a 23.10.2014

Budu nasazovat Gearman na jednom projektu, tak bych se ostatních rád zeptal na zkušenosti.

Náš projekt je v PHP, ale otázku jsem dal záměrně do kategorie jiné, protože knihoven pro Gearman je více a jak worker tak klient může být v různém jazyce (C, Python, Ruby, PHP...)

Chci kombinaci použít pro paměťově náročné zpracování dat, kdy jeden průběh cyklu alokuje přes 1MB paměti (částečně nemůžeme kód třetí strany ovlivnit a u nás už se optimalizovat moc nedá - o tom dotaz ale není). Jednotlivé workery budou startovány a hlídány pomocí démona Supervisor. Worker se po určitém počtu cyklů na základě kontroly spotřebované paměti sám ukončí a Supervisor okamžitě nastartuje nový proces.

Slibuju si od toho rychlejší zpracování (může být více workerů) a zároveň že nebude docházet k ukončení skriptu z důvodu nedostatku paměti pro tisíce položek. Respektive bude to řízený proces s externí kontrolou.

Díky za jakékoliv postřehy, zkušenosti nebo otázky.

odkaz Vyřešeno
4 bazo
odpověděl/-a 23.10.2014

ja by som ti radsej odporucil rabbitmq, s gearmanom nevies dost dobre zistit kolko jobov ti ostava, nie sus statistiky a potrebujes extension, ktora funguje len na linuxe(php)

Komentáře

  • Michal Kleiner : Na podobne fronty jsem se dival, ZeroMQ, RabbitMQ.. Gearman mi prisel takovy primocarejsi, snadnejsi na nasazeni.. I kdyz jak se divam na zakladni priklad pro RabbitMQ (https://www.rabbitmq.com/tutorials/tutorial-two-php.html), nevypada to o moc slozitejs. 23.10.2014
  • JaSei : s gearman zkusenost nemam, ale rabbitmq muzu take doporucit.. jednoduche na pouziti a fakt to funguje;) 24.10.2014
  • Michal Vyšinský : Jestli to bude dělat v PHP tak Filip Procházka RabbitMQ používá a jak je zvykem, už napsal knihovnu: https://github.com/Kdyby/RabbitMq 24.10.2014
  • Michal Kleiner : Tak jsem vyzkoušel RabbitMQ a vypadá to dobře v kombinaci se Supervisor. V rámci callbacku pro zpracování přijatých dat na začátku zkontroluju využitou paměť, pokud je přes definovaný limit, tak zprávu ani nezpracuju a skript ukončím. Během okamžiku Supervisor startuje nový a fronta se vesele krátí. Instalace na dev stroji (mac) i na testovacím a produkčním serveru (debian) byla bezproblémová. 27.10.2014

Pro zobrazení všech 2 odpovědí se prosím přihlaste:

Rychlé přihlášení přes sociální sítě:

Nebo se přihlaste jménem a heslem:

Zadejte prosím svou e-mailovou adresu.
Zadejte své heslo.