物聯網通訊之Swoole建立Websocket伺服器,一切從簡單開始

物聯網通訊之Swoole建立Websocket伺服器,一切從簡單開始

物聯網之實時通訊,使用WorkerMan建立自己的websocket伺服器

昨天的文章講述瞭如何利用Workerman建立Websocket實時通訊伺服器,今天我們來說說如何利用Swoole建立Websocket伺服器。

物聯網通訊之Swoole建立Websocket伺服器,一切從簡單開始

Swoole與Websocket的相同點在於,兩者都是跑在PHP-cli模式下。但本質上有很大的區別。Websocket是純PHP編寫的通訊框架,而Swoole則是PHP的一個擴充套件。佈署會有所區別,應用時則非常相似。

那麼做通訊應用時該選哪一個呢?其實是沒有一個很明確的說法。主要還是看你當前的業務模式、未來業務的發展方向以及規模,當然跟你業務的架構也有關係,小搜就不隨便推薦了。畢竟最適合自己的就是最好的。

接下來我們展開正題:

一、安裝Swoole擴充套件

#!/bin/bashpecl install swoole

正常情況下,鍵入命令後,就能進入自動安裝流程。但這裡需要注意的是如果安裝的swoole4,需用的gcc編譯器版本為4。8+。

二、建立websocket服務

建立一個websocket。php,並編輯其內容如下:

<?php$server = new swoole_websocket_server(“127。0。0。1”, 9502);$server->on(‘open’, function($server, $req) { echo “connection open: {$req->fd}\n”;});$server->on(‘message’, function($server, $frame) { echo “received message: {$frame->data}\n”; $server->push($frame->fd, json_encode([“hello”, “world”]));});$server->on(‘close’, function($server, $fd) { echo “connection close: {$fd}\n”;});$server->start();

三、除錯webocket

物聯網通訊之Swoole建立Websocket伺服器,一切從簡單開始

從上圖可以看出,測試結果正常。

好啦,這期就到這裡啦,喜歡小搜的同學們,請持續關注哦。後面會繼續為大家帶來更實用的知識。