用Swoole快速搭建乙個推送伺服器

2021-09-16 18:55:29 字數 1736 閱讀 3184

實現簡單的廣播, 支援身份驗證

廢話少說,上**.

<?php 

namespace church;

use reflectionclass;

use reflectionexception;

use swoole\websocket\server;

class websocket

public function init()

;$this->aftersendmsgcallback = function() {};

$this->beforeauthcallback = function() {};

$this->afterauthcallback = function() {};

$this->authenticator = function() {};

$this->bindevents();

}public function bindevents()

public function run()

public function onopen(server $server, $request)

$this->customers = $request->fd;

call_user_func($this->afterauthcallback, $server, $request);

}public function onmessage(server $server, $frame)

public function onclose($ser, $fd)

public function __call($method, $params)

catch (reflectionexception $e)

call_user_func_array([$this->server, $method], $params);

}public function broadcast($fromuser, $messages)

}private function auth($request)

return $result;

}}

<?php 

require './vendor/autoload.php';

use church\websocket;

$server = new websocket('0.0.0.0', 9501, [

'daemonize' => 1,

]);$server->authenticator = function($request) use ($server) ;

$server->afterauthcallback = function($ser, $request) use ($server) ;

$server->run();

php index.php  #就會以守護程序方式執行
客戶端js**:

var websocket = new websocket("ws:");

websocket.onopen=function(evt) ;

websocket.onmessage = function(evt) ;

websocket.onclose = function(evt) ;

搭建過程非常方便。實現的比較簡陋,但是可以滿足一般的需求了。支援身份驗證功能,驗證不通過會自動踢掉。

用Pomelo 搭建乙個簡易的推送平台

實際上,個人感覺,pomelo 目前提供的兩個預設sioconnector和hybridconnector使用的協議並不適合用於做手機推送平台,在pomelo的乙份公開ppt裡面,有提到過,網易的訊息推送平台是基於pomelo開發的 乙個frontend 支援30w 長連線,消耗了3g 記憶體,如果...

用Pomelo 搭建乙個簡易的推送平台

src 實際上,個人感覺,pomelo 目前提供的兩個預設sioconnector和hybridconnector使用的協議並不適合用於做手機推送平台,在pomelo的乙份公開ppt裡面,有提到過,網易的訊息推送平台是基於pomelo開發的 乙個frontend 支援30w 長連線,消耗了3g 記憶...

用swoole搭建推送訊息到小程式的伺服器

用swoole搭建推送訊息到小程式的伺服器。php7.1.3 已安裝 centos7 swoole 然後set array ssl cert file cert path.crt ssl key file cert path.key 如果需要 ssl的話 需要新增證書 否則去掉這段 監聽websoc...