Principio

Descrizione del Worker

Il Worker è il contenitore più basilare in Workerman. Il Worker può avviare più processi per ascoltare porte e comunicare utilizzando protocolli specifici, simile a come nginx ascolta su una certa porta. Ogni processo Worker opera in modo indipendente, utilizzando Epoll (è necessaria l'estensione event) + IO non bloccante. Ogni processo Worker è in grado di gestire migliaia di connessioni client e di elaborare i dati inviati da queste connessioni. Il processo principale, per mantenere la stabilità, si occupa solo di monitorare i processi secondari, senza ricevere dati o eseguire alcuna logica di business.

Relazione tra client e processo worker

modello workerman master worker

Relazione tra processo principale e processi worker

modello workerman master worker

Caratteristiche:

Dall'immagine si può notare che ogni Worker mantiene le proprie connessioni client, consentendo una comunicazione in tempo reale tra client e server. Basato su questo modello, possiamo facilmente implementare alcune esigenze di sviluppo fondamentali, come server HTTP, server Rpc, report in tempo reale da alcuni dispositivi hardware intelligenti, push di dati dal server, server di gioco, backend di mini programmi WeChat, ecc.