摘要:是基于和的高性能服務框架核心特性基于提供分布式服務器通訊服務基于提供遠程調用服務基于提供在線網絡直播平臺服務基于提供同步異步數據庫連接池服務基于提供異步任務服務器投遞任務服務基于提供服務器硬件實時監控服務基于提供共享數據配置服務基于提供高并
zys是基于yaf和swoole的高性能服務框架
核心特性
1.基于swoole提供分布式服務器通訊服務 2.基于thrift提供rpc遠程調用服務 3.基于HTML5提供在線網絡直播平臺服務 4.基于swoole提供同步異步數據庫連接池服務 5.基于swoole提供異步任務服務器投遞任務服務 6.基于vmstat提供服務器硬件實時監控服務 7.基于yac、yaconf提供共享數據、配置服務 8.基于zqf提供高并發計數器、紅包、二維碼服務 9.很好的支持網頁版console的shell服務
服務啟動
需要php以cli模式運行/server/server.php
php server.php start php server.php stop php server.php restart
composer 安裝
{ "require": { "qieangel2013/zys": "0.1.1" } }
thrift的rpc遠程調用
本地訪問http://localhost/index/rpc (返回0表示成功)
數據庫連接池使用方法
服務文件在/server/mysql/DbServer.php 簡單地封裝文件在/application/library/mysql/dbclient.php 配置在conf/application.ini中 ;數據庫連接池配置 DbServer.async=true //配置是同步執行還是異步執行,默認不配置代表異步執行,同步執行設置為false DbServer.multiprocess=false //配置是否啟用多進程,默認不配置代表單進程阻塞模式,多進程模式要設置為true DbServer.pool_num=20 //配置連接池mysql的數量 DbServer.port=9501 DbServer.logfile="/server/log/DbServer.log" DbServer.localip="192.168.2.13" 使用方法: $dbclient=new mysql_dbclient; //print_r($data); for ($i=0; $i <100 ; $i++) { $dbclient->query("INSERT INTO user(name) VALUES("$i")"); //echo "INSERT INTO user(name) VALUES("$i")"; } $data=$dbclient->query("select * from user"); $dbclient->close(); print_r($data); exit;
swoole實現簡單的視頻直播(可以實時傳音頻、視頻、聊天)
錄制視頻頁面 http://localhost/index/swoolelivecamera 接受視頻頁面 http://localhost/index/swoolelive
vmstat服務器監控
本地訪問http://localhost/vmstat/
yac、yaconf提供共享數據、配置使用如下
需要安裝php擴展yac、yaconf //注意:需要安裝yaconf擴展,并且yaconf.directory=/tmp/yaconf 必須在php.ini里設置,不能動態加載 echo Yaconf::get("conf.zqf"); //注意:需要安裝yac擴展,用于存儲共享變量,下面的實例作為高并發計數器 $yac = new Yac(); $count=$yac->get("zqf"); if(!$count){ $yac->set("zqf", 1); }else{ $yac->set("zqf", $count+0.5); } echo $count;
高并發計數器、紅包、二維碼使用如下
需要安裝php擴展zqf 首先安裝php擴展zqf.so phpize來安裝 然后在php文件調用 dl("zqf.so");或者phpini里加載([https://github.com/qieangel2013/zqf) $obj=new zqf(); $counter= $obj->autoadd(0,1,0);(聲明只針對多線程) echo $counter; 紅包第一個參數是紅包總額,第二個人參數紅包數量,第三個參數默認代表拼手氣紅包,設置為1的話為普通紅包 拼手氣紅包 $hongb= $obj->hongbao(10,8);或者$hongb= $obj->hongbao(10,8,0);返回數組為Array ( [0] => 1.33 [1] => 1.02 [2] => 1.28 [3] => 0.44 [4] => 1.37 [5] => 0.81 [6] => 1.81 [7] => 1.94 ) 普通紅包,每個人數額一樣設置第三個參數 $hongb= $obj->hongbao(10,8,1);返回數組為Array ( [0] => 1.25 [1] => 1.25 [2] => 1.25 [3] => 1.25 [4] => 1.25 [5] => 1.25 [6] => 1.25 [7] => 1.25 ) var_dump($hongb); $obj->savefile("https://www.baidu.com/s?wd=昌平香堂","./test.png",500);第一個參數是url,第二參數是保存路徑,第三個參數是二維碼長或者寬 $obj->savefile("https://www.baidu.com/s?wd=昌平香堂","./test.png",500,1);第一個參數是url,第二參數是保存路徑,第三個參數是二維碼長或者寬,第四個參數是決定是否透明,默認是不透明的
網頁版console的shell使用如下
本地訪問http://localhost/console
交流使用
zys框架交流群:337937322
License
Apache License Version 2.0 see http://www.apache.org/licenses/LICENSE-2.0.html
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/21832.html
摘要:異步隊列消費者開發只提供了模式下運行控制器方法,并未提供主進程多子進程的進程模型,并未提供多線程處理。多線程異步隊列服務只需寫好控制器方法,然后在配置文件中配置下路由命名空間進程線程數量,就可在模式中啟動多進程多線程模型的異步隊列處理程序。 最近業余時間一直在開發ExpressPHP的第二個版本 MixPHP,今天下班想起之前一個面試官的問題:你為什么還要再造一個輪子呢?仔細回想,第一...
摘要:是將騰訊內部使用的微服務架構多年的實踐成果總結而成的開源項目,目前已于月日正式對外開源。 Tars 是將騰訊內部使用的微服務架構 TAF(Total Application Framework)多年的實踐成果總結而成的開源項目,目前已于4月10日正式對外開源。 作為支持多語言的高性能 RPC 開發框架和配套一體化的服務治理平臺,Tars可以幫助企業或者用戶以微服務的方式快速構建穩定可靠...
摘要:框架最新源代碼行數行,因此可以很容易的改造它,成為你們公司的專屬框架。也不同于其他基于的微服務框架,只聚焦于微服務治理,定位于開發的更多領域,覆蓋從初創到億元級體量的技術訴求。的授權全靠用戶自愿購買,詳情 MixPHP是什么 MixPHP 是秉承 普及 PHP 常駐內存型解決方案,促進 PHP 往更后端發展 的理念而創造,采用 Swoole 擴展作為底層引擎,圍繞常駐內存的方式而設計,...
摘要:分布式高并發微服務問阿里京東螞蟻等大廠面試真題解析道跳槽漲薪必備精選面試題最新版大廠面試真題集點擊這里免費領取點擊這里免費領取 估計很多Java程序員平時主要的工作就是一些Web系統的業務開發,對于服務端IO程序以及網絡通信編程做得并不多,但是對于高級或者資深程序員來說,IO通信以及服務端編...
摘要:前言一直以來,因為標準應用方式是配合或使用,而被認為不適合做服務化后端。下面我就介紹如何用來搭建一個高性能的服務化后端框架,并且實現一個客戶端調用例子。服務端我使用的框架叫,地址在這里。 前言 一直以來,PHP 因為標準應用方式是配合 php-fpm 或 apache mod 使用,而被認為不適合做服務化后端。但是隨著 Workerman 和 Swoole 這些常駐進程模塊的出現,PH...
閱讀 3470·2021-09-22 15:02
閱讀 3507·2021-09-02 15:21
閱讀 2133·2019-08-30 15:55
閱讀 2780·2019-08-30 15:44
閱讀 776·2019-08-29 16:56
閱讀 2414·2019-08-23 18:22
閱讀 3342·2019-08-23 12:20
閱讀 3091·2019-08-23 11:28