Citat:
Ursprungligen postat av Johnny Viking
I just detta projekt så är det Laravel och där finns ett paket för att ge support för RabbitMQ. Så det är ju en bra början.
Och att det funkar i Windows?! Verkar ju schyst då man sitter på en windows-maskin och utvecklar. Vagrant har funkat sådär på Windows-maskinen medan det är mycket stabilare på min Mac-dator. Så kan jag få tester mm att fungera på min Windows-dator vore det fantastiskt. Dock är prod i detta fall ändå en Linux...
Dock generellt, hur gör ni med hanteringen av misslyckade jobb. T.ex pga en bugg i PHP där själva skriptet slutar fungera och kön inte går vidare till nästa jobb?
|
Om du ska drifta i en Linux-miljö gör det stor nytta att utveckla i en sådan. Helst ska den provisioneras på precis samma sätt som live-servern (med Chef, Puppet eller annat provisionerings-verktyg). Därav är Vagrant ett väldigt bra val, även om den jävlas lite på Windows så är det värt att lägga lite tid på att fixa det om det inte tar evigheter.
Har du en PHP-process som väntar på och kör bakgrundsjobb under en större tidsperiod, t ex en Gearman worker, så bör du ha någon typ av processhantering. Själv brukar jag lägga in en koll i workern som avslutar sig själv efter ett tag (PHP är inte stabilt för riktigt långkörande processer, även om det är mycket bättre än förr) och sedan Supervisor för att starta om den. Supervisor håller även koll på att den startas om den kraschar, liksom den kan hålla koll på flera samtidiga workers. Finns även alternativ till det runit, watchdog, daemon tools osv (inte använt dom så inte 100 på att de är exakt samma).