如何用pHp來搭建一個高性能的服務化高性能調用例子?

2023-12-05    分類: 網站建設

前言

長期以來,pHp 被認為不適合作為服務后端,因為標準的應用方法是使用 php-fpm 或 mod。但是隨著這些常駐進程模塊的出現,pHp已經合格了。

下面我將介紹如何使用pHp構建高性能的面向服務的后端框架并實現一個客戶端調用示例。

服務端

現在pHp圈最流行的框架是,是它的簡化版php框架性能對比,保留了(依賴注入)、(命令行生成數據表)等優點。

我在服務端使用的框架叫Luke,地址在這里。盧克是一個非官方的分支。它在上層做了一層封裝,剝離了用于http的路由,引入。

現在在你的工作目錄中執行以下命令來生成項目代碼

composer create-project luke/luke=dev-luke rpcserver
cd rpcserver

此時目錄下有http.php和.php兩個文件,分別對應http服務和服務。現在我們進入/app/Http/,編輯.php文件,添加如下代碼

public function show($name)
{
    return "Hello $name, this is Luke.";
}

這樣我們的服務器就設置好了,現在回到目錄執行下面的命令啟動服務

php servers/jsonrpc.php start

此時會輸出

Workerman[servers/jsonrpc.php] start in DEbUG mode
----------------------- WORKERMAN -----------------------------
Workerman version:3.5.4          pHp version:7.2.1
------------------------ WORKERS -------------------------------
user          worker        listen                 processes status
simon         none          jsonNL://0.0.0.0:8000   1         [OK] 
----------------------------------------------------------------

表示服務運行正常。

此示例僅適用于一個任務流程。更多設置和守護進程方法請查看文檔

客戶

現在我們回到項目根目錄,再打開一個,輸入以下命令新建一個客戶端目錄并導入模塊

mkdir client
cd client
composer require luke/client

此時/luke/目錄下已經有.php和test.php兩個文件,分別是配置和客戶端的例子。忽略它們,在項目目錄下新建一個test.php文件,輸入如下代碼保存

 [
        'hosts' => ['127.0.0.1:8000']
    ]
];
Client::config($config);
$client = Client::instance("Example");
$ret = $client->show('開發者');
var_dump($ret);

立即執行

php test.php

如果你看到輸出

array(1) {
  'result' =>
  string(30) "Hello 開發者, this is Luke."
}

恭喜!你的 rpc 服務器和客戶端已經設置好了。現在將其應用到官方項目中。

作為pHp的常駐程序,兩者都很優秀,在社區的活躍度也比較高。但是因為兩者的性能差不多,而且都是用純pHp開發的,代碼更可控,所以Luke選擇了。不過兩者的調用方式很接近,只要稍微修改一下代碼就可以改用了。

并發性能可以參考這里

后記

在生產環境中使用面向服務的架構。除了協議,通信部分還必須注意加密。 Luke的這部分暫未提供php框架性能對比,用戶可以通過簡單的加密算法自行實現。

當服務比較多時,還需要加入自動發現的功能。這一點在 Luke 的項目主頁上提供了一些想法。

新聞標題:如何用pHp來搭建一個高性能的服務化高性能調用例子?
本文鏈接:http://m.kartarina.com/news43/299193.html

成都網站建設公司_創新互聯,為您提供域名注冊響應式網站小程序開發ChatGPT云服務器標簽優化

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

網站建設網站維護公司
主站蜘蛛池模板: 亚洲精品无码日韩国产不卡?V| 亚洲色av性色在线观无码| 中文无码字慕在线观看| 亚洲AV无码成人精品区日韩| 亚洲最大中文字幕无码网站| 国产成人亚洲综合无码| 精品人妻无码区二区三区| 精品亚洲成α人无码成α在线观看| 日韩av无码中文字幕| 成人无码视频97免费| 日韩免费a级毛片无码a∨| 无码一区二区三区在线观看 | 国产免费av片在线无码免费看| 国产午夜无码片免费| 国产免费午夜a无码v视频| 精品成在人线AV无码免费看 | 无码中文在线二区免费| 亚洲色偷拍另类无码专区| 无翼乌工口肉肉无遮挡无码18| 久久精品aⅴ无码中文字字幕重口| 惠民福利中文字幕人妻无码乱精品| 亚洲精品无码日韩国产不卡av| 国产av永久无码天堂影院| 中文无码喷潮在线播放| a级毛片无码免费真人久久| 成人h动漫精品一区二区无码| 日本精品人妻无码免费大全| 精品国精品无码自拍自在线| 久久久久无码精品国产| 少妇人妻无码专区视频| 少妇人妻偷人精品无码视频| 久久精品亚洲中文字幕无码网站| 亚洲人成人无码网www电影首页| 亚洲中文字幕无码爆乳av中文 | 亚洲av无码专区亚洲av不卡| 亚洲AV无码国产精品色| 久久无码国产专区精品| 无码福利一区二区三区| 午夜爽喷水无码成人18禁三级 | 免费A级毛片无码久久版| 免费无码看av的网站|