中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

swoole有什么用處

發布時間:2021-01-16 11:44:20 來源:億速云 閱讀:169 作者:小新 欄目:編程語言

小編給大家分享一下swoole有什么用處,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

應用場景簡介

與硬件設備連接通訊(定位設備)

IM系統(用于直播頁面的聊天通訊)

場景1 - 實時收集定位數據實時輸出(例 滴滴司機行駛軌跡)

說明:

需要將所有的定位設備實時的接收,將實時的軌跡記錄顯示在地圖上

注意點:

第一點:

web1服務器連接的用戶1,2,3,web1廣播信息時只能廣播用戶1,2,3,不能廣播web2連接的用戶4,5,6,假設場景是聊天,用戶1發送一消息,只有web1 服務器的用戶能看到,web2的用戶全部不能收到

swoole有什么用處

第二點:消息的頻率控制,例:100個設備,100個用戶, 100個設備每秒上傳一條數據,需要實時廣播給每個用戶,就是每秒要100*100 = 1W次,所以可以匯總每秒數據廣播給所有用戶等等方法

場景2 - 只收集定位設備入庫

說明:需要把所有的定位設備上傳的數據入庫,設備7個,每秒一條數據,個人使用swoole 的task 函數(投遞一個異步的任務到 task_worker池中,此函數是非阻塞的, worker進程數同樣可以配置) 后調用接口方式入庫

服務器內存報警問題

原因: 在于swoole_server->task 函數

官方介紹task底層使用Unix Socket管道通信,是全內存的,沒有IO消耗。單進程讀寫性能可達100萬/s,不同的進程使用不同的管道通信,可以最大化利用多核。

但這任務如果是調用程序接口時,由于網絡的延遲,增加的任務大于消費的任務時,內存占用會不斷的增加,導致服務器的內存被占滿。

解決方法:消息針對入任務的頻率控制,可以根據自己的業務場景定義這個時間與是否可延遲等情況,匯總1秒內的所有數據再調用程序接口(匯總時個人使用redis),最好能直接入庫,不必調用接口

場景-IM系統

參考官方github: webim系統.

官方wiki: swoole 框架wiki

好處

封裝了數據庫的model類,數據庫的ORM接口

redis的封裝,可以實現多實例訪問

框架有一些常用的方法,像log 等等(我只用到了log)

以上是“swoole有什么用處”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

武城县| 锦州市| 民勤县| 桃园市| 临颍县| 于都县| 额敏县| 林口县| 延川县| 黄浦区| 丹江口市| 满洲里市| 许昌市| 南乐县| 随州市| 咸阳市| 大埔区| 曲靖市| 德格县| 和静县| 汉源县| 东源县| 河南省| 阳原县| 沙田区| 大新县| 开封市| 车险| 仁布县| 攀枝花市| 全椒县| 木兰县| 岫岩| 汤阴县| 乌拉特前旗| 广汉市| 兴安盟| 阿坝县| 新宾| 丰城市| 尼玛县|