之前用workerman接過很花時間,現在workerman對其代碼做了優化-》https://www.workerman.net/web-sender
效果1:
接收消息頁面:http://demos.workerman.net/web-sender/
推送接口url:http://demos.workerman.net:2121/?type=publish to=uid content=content
其中to為接收消息的uid,如果傳空則向所有人推送消息 content 為消息內容
效果2:
見本頁面頁腳在線統計部分,支持實時的在線人數和在線頁面統計
其它應用vmstat服務器狀態監控服務
WEB消息推送框架
BrowserQuest PHP版本攝像頭視頻直播Thrift RPC 遠程調用框架Json RPC遠程調用框架聊天室框架統計監控系統PHP小蝌蚪實時交互游戲 hotflappy bird 多人在線版游戲
安裝啟動首先:參考手冊檢查/安裝workerman環境
1、下載:(下載web-msg-sender,并解壓縮到任意目錄
2、啟動:linux系統cd到到框架目錄里運行php start.php start -d。windows系統進入到框架目錄里雙擊start_for_win.bat文件啟動。
3、測試:瀏覽器訪問端口http://ip:2123或者http://域名:2123,例如 http://workerman.net:2123如圖:(如果無法訪問請檢查服務器防火墻,如果是云服務器還要設置安全組)
前端測試:script src= /uploads/allimg/190427/102F06192-1.jpg /script script // 連接服務端,workerman.net:2120換成實際部署web-msg-sender服務的域名或者ip var socket = io( http://workerman.net:2120 // uid可以是自己網站的用戶id,以便針對uid推送以及統計在線人數 uid = 123; // socket連接后以uid登錄 socket.on( connect , function(){ socket.emit( login , uid); // 后端推送來消息時 socket.on( new_msg , function(msg){ console.log( 收到消息: +msg); // 后端推送來在線數據時 socket.on( update_online_count , function(online_stat){ console.log(online_stat); /script后端調用api向任意用戶推送:
?php// 指明給誰推送,為空表示向所有在線用戶推送$to_uid = // 推送的url地址,使用自己的服務器地址$push_api_url = http://workerman.net:2121/ $post_data = array( type = publish , content = 這個是推送的測試數據 , to = $to_uid, $ch = curl_init ();curl_setopt ( $ch, CURLOPT_URL, $push_api_url );curl_setopt ( $ch, CURLOPT_POST, 1 );curl_setopt ( $ch, CURLOPT_HEADER, 0 );curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );curl_setopt ( $ch, CURLOPT_POSTFIELDS, $post_data );curl_setopt ($ch, CURLOPT_HTTPHEADER, array( Expect: ));$return = curl_exec ( $ch );curl_close ( $ch );var_export($return);
在linux跑時,可能需要php的posix和pcntl擴展
WorkerMan的推送 添加到YII2 [ 2.0 版本 ]
以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP !
相關推薦:
PHP的文件和目錄操作
php生成短連接的方法
以上就是php 如何加入即時推送的功能的詳細內容,PHP教程
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
|
新聞熱點
疑難解答