Heim > PHP-Framework > Swoole > Wie Swoole mit hoher Parallelität umgeht

Wie Swoole mit hoher Parallelität umgeht

(*-*)浩
Freigeben: 2019-12-07 13:32:03
Original
2959 Leute haben es durchsucht

Wie Swoole mit hoher Parallelität umgeht

Wie swoole mit hoher Parallelität umgeht

①Einführung in das Reactor-ModellVideo-Tutorial)

Das asynchrone, nicht blockierende IO-Multiplexprogramm verwendet das klassische Reaktormodell, das, wie der Name schon sagt, „Reaktor“ bedeutet. Es verarbeitet selbst keine Daten. Es kann nur die Ereignisänderungen eines Socket-Handles (oder eines Pipe-, Eventfd-, Signal-Handles) überwachen.

Reactor ist nur ein Ereignisgenerator. Die eigentlichen Vorgänge am Socket-Handle, wie z. B. Verbinden/Akzeptieren, Senden/Empfangen und Schließen, werden im Rückruf abgeschlossen.

②swooles Architektur

swoole verwendet Multithread-Reaktor + Multiprozess-Worker.

Wenn eine Anfrage eintrifft, geht Swoole damit folgendermaßen um:

请求到达 Main Reactor
        |
        |
Main Reactor根据Reactor的情况,将请求注册给对应的Reactor
(每个Reactor都有epoll。用来监听客户端的变化)
        |
        |
客户端有变化时,交给worker来处理
        |
        |
worker处理完毕,通过进程间通信(比如管道、共享内存、消息队列)发给对应的reactor。
        |
        |
reactor将响应结果发给相应的连接
        |
        |
    请求处理完成
Nach dem Login kopieren

Da der Reaktor auf Epoll basiert, kann jeder Reaktor unzählige Verbindungsanfragen verarbeiten . Auf diese Weise kann Swoole problemlos mit hoher Parallelität umgehen.

Das obige ist der detaillierte Inhalt vonWie Swoole mit hoher Parallelität umgeht. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage