Laravel 中構建 grpc 服務--準備工作

firmgoal發表於2019-06-23

本文主要講述在laravel框架中構建grpc服務的準備工作
注:
1.php做grpc的客戶端,這裡我會採用go語言編寫grpc的服務端,後續文章會講到
2.客戶端與服務端通訊是通過protocol buffers進行互動的
那麼什麼是protocol buffers?請參考:

  1. https://developers.google.cn/protocol-buff...
  2. https://www.jianshu.com/p/a24c88c0526a
  3. https://www.jianshu.com/p/2265f56805fa

環境如下:

macos 10.3.6
php版本:7.1.2
laravel版本:5.8

首先你的php需要安裝grpc擴充套件:
Laravel中配置Grpc服務

這裡我選擇的手動編譯安裝,安裝步驟就不演示了,如果你需要幫助可以私信我。
grpc擴充套件下載地址:http://pecl.php.net/package/gRPC
當然,你也可以使用pecl直接安裝,pecl install grpc-1.20.0

你的機器上需要安裝protobuf,這裡我使用homebrew進行安裝
查詢命令:brew search protobuf
安裝命令:brew install protobuf

Laravel 中配置 Grpc 服務--準備工作

然後你需要在你的laravel專案的composer.json中引入“grpc/grpc”和“google/protobuf”這兩個SDK,版本號如圖:
Laravel中配置Grpc服務
執行composer update

在專案根目錄下建立一個叫grpc的資料夾,在此資料夾中建立一個叫 test.proto的檔案,檔案內容如下:

Laravel 中構建 grpc 服務--準備工作

.proto結尾的檔案一式兩份,客戶端儲存一份、服務端儲存一份,相當於定義了互動的格式。

就此,我們的準備工作已經完成
參考資料
https://grpc.io/docs/quickstart/php/

相關文章