首頁 >php框架 >Workerman >workerman的集群怎麼開發

workerman的集群怎麼開發

(*-*)浩
(*-*)浩原創
2019-12-12 10:20:103511瀏覽

GatewayWorker基於Workerman開發的專案框架,用於快速開發TCP長連線應用,例如app推送服務端、即時IM服務端、遊戲服務端、物聯網、智慧家庭等等

workerman的集群怎麼開發

#Workerman可以看做是一個純粹的socket類別庫,可以開發幾乎所有的網路應用,不管是TCP的還是UDP的,長連接的還是短連接的。 Workerman程式碼精簡,功能強大,使用靈活,能夠快速開發出各種網路應用。                         (建議學習: workerman教學

同時Workerman比較底層,需要開發者有一定程度的多層程式設計經驗。

提示

GatewayWorker提供的所有介面都是支援分散式呼叫的,所以業務程式碼不需要任何更改,直接就可以分散部署。

如何分散式GatewayWorker

GatewayWorker透過Register服務來建立分割叢集。同一叢集使用相同的Register服務ip和連接埠,即Gateway 和 businessWorker的註冊服務位址($gateway->registerAddress $businessworker->registerAddress)指向同一台Register服務。

分散式部署的關鍵步驟

1、一個叢集只需要一台伺服器作為Register服務,用於在進程啟動時協調Gateway與BusinessWorker之間的建立連接通訊,其它伺服器可以刪掉start_register.php檔案或註解掉裡面的程式碼。

(Register服務本身通訊量極低,一般僅在程序啟動時通訊,所以Register服務本身不會成為瓶頸,運行過程中即使Register服務伺服器暫時掛掉,也不會對外網服務造成影響,所以Register服務通常不需要做高可用)

2、將Gateway 和businessWorker的註冊服務地址(registerAddress)設定成統一的Register服務地址,也就是步驟1選擇的Register服務所在伺服器的ip和連接埠。

3、設定Gateway啟動腳本(一般是start_gateway.php)中的lanIp與目前伺服器內網ip一致

以上是workerman的集群怎麼開發的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn