利用swoole+redis實現(xiàn)股票和區(qū)塊鏈服務(wù)
本文主要給大家介紹了關(guān)于swoole+redis實現(xiàn)股票和區(qū)塊鏈服務(wù)的相關(guān)內(nèi)容,分享出來供大家參考學(xué)習(xí),下面話不多說了,來一起看看詳細的介紹吧。
PHP 的redis擴展是阻塞式 IO ,使用訂閱/發(fā)布模式時,會導(dǎo)致整個進程進入阻塞。因此必須使用Swoole\Redis異步客戶端來實現(xiàn)。
$server = new swoole_websocket_server("0.0.0.0", 9501);
$server->on('workerStart', function ($server, $workerId) {
$client = new swoole_redis;
$client->on('message', function (swoole_redis $client, $result) use ($server) {
if ($result[0] == 'message') {
foreach($server->connections as $fd) {
$server->push($fd, $result[1]);
}
}
});
$client->connect('127.0.0.1', 6379, function (swoole_redis $client, $result) {
$client->subscribe('kline1min');
});
});
$server->on('open', function ($server, $request) {
});
$server->on('message', function (swoole_websocket_server $server, $frame) {
$server->push($frame->fd, "hello");
});
$server->on('close', function ($serv, $fd) {
});
$server->start();
- 在進程啟動(onWorkerStart)時創(chuàng)建了Swoole\Redis客戶端,連接到Redis服務(wù)器
- 連接成功后,訂閱msg_0主題的消息
- 當(dāng)有新的message時,Swoole\Redis會觸發(fā)onMessage事件回調(diào)
- 在這個回調(diào)函數(shù)中使用$server->connections遍歷服務(wù)器所有的連接,發(fā)送消息
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
- php安裝swoole擴展的方法
- php異步多線程swoole用法實例
- PHP的swoole擴展安裝方法詳細教程
- 使用swoole擴展php websocket示例
- ThinkPHP5.0框架結(jié)合Swoole開發(fā)實現(xiàn)WebSocket在線聊天案例詳解
- PHP+swoole實現(xiàn)簡單多人在線聊天群發(fā)
- linux下安裝openssl、swoole等擴展的詳細步驟
- linux平臺編譯安裝PHP7并安裝Redis擴展與Swoole擴展實例教程
- docker搭建php+nginx+swoole+mysql+redis環(huán)境的方法
- 在PHP 7下安裝Swoole與Yar,Yaf的方法教程
- Linux下源碼包安裝Swoole及基本使用操作圖文詳解
- centos7環(huán)境下swoole1.9的安裝與HttpServer的使用方法分析
相關(guān)文章
我的php學(xué)習(xí)筆記(畢業(yè)設(shè)計)
不單是為了做畢業(yè)設(shè)計,其實更多的是想學(xué)會它,能弄弄網(wǎng)站什么的,只要能做好,我覺得就是可以去學(xué),可以去嘗試的2012-02-02
php中preg_replace_callback函數(shù)簡單用法示例
這篇文章主要介紹了php中preg_replace_callback函數(shù)簡單用法,分析了preg_replace_callback函數(shù)的功能及簡單使用方法,需要的朋友可以參考下2016-07-07

