1: Daemon overzicht

De Phlo Daemon is een optionele Node sidecar (phlo-daemon.js) die elk Phlo-doel uitvoert op een pool van residentiële workers. Het is een generieke engine: het weet niets over WebSockets, taken of enige specifieke functie. Phlo Realtime en de scheduler zijn ingebouwd in de daemon; de runtime helpers bereiken het via lokale HTTP. Core Phlo werkt zonder het; de daemon is de laag die de zware paden snel maakt en de langdurige services aandrijft.

Phlo Daemon broncode (phlo-daemon.js)

1.1: Drie manieren waarop Phlo code uitvoert

Elke routine in een Phlo-app is een aanroepbaar doel (Class::method, object.method of een blote function). Er zijn drie manieren waarop het daadwerkelijk wordt uitgevoerd:

Modus Wat er gebeurt Wanneer
In-process Een gewone functie- of methode-aanroep binnen het huidige verzoek. Geen nieuw proces. De normale situatie: routes, views, modellen.
One-shot CLI Een verse php app.php <target> proces dat de app opstart, draait en afsluit. Een doel dat wordt aangeroepen vanuit cron, een deploy-script of een async helper zonder daemon. Eén opstart per aanroep.
Pooled worker Een resident worker (gestart door de daemon) die de app eenmaal heeft opgestart en aanroepen via een pijp beantwoordt. Geen opstart per aanroep. Dezelfde doelen, wanneer de daemon draait.

De eerste is gewoon PHP. De tweede en derde zijn hetzelfde doel dat buiten de band wordt uitgevoerd; het enige verschil is of er elke keer een nieuw proces wordt opgestart (one-shot) of dat een warme worker wordt hergebruikt (pool). De daemon is wat het one-shot pad omzet in het pooled pad.

1.2: Waarom het optioneel is

De one-shot route betekent dat er niets moeilijks afhankelijk is van de daemon. Async helpers vallen terug op een subprocess; taken vallen terug op cron; een app die alleen HTTP bedient heeft het helemaal niet nodig. Dus je kunt ontwikkelen en implementeren zonder de daemon, en deze inschakelen waar opstartkosten of realtime belangrijk zijn, zonder wijzigingen aan je app-code.

Voer de daemon uit wanneer een app:

1.3: Wat je aansluit

De phlo-daemon repository is de bron, en het Daemon hoofdstuk van de gids is de uitgebreide technische referentie.

We gebruiken essentiële cookies om deze site te laten werken. Met uw toestemming gebruiken we ook analytics om de site te verbeteren.