Laravel 中构建 grpc 服务--准备工作

本文主要讲述在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/

本作品采用《CC 协议》,转载必须注明作者和本文链接
shubiao-yao
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 3

谁说不能做grpc服务端,swoole了解一下?

4年前 评论

protoc插件有快速安装的方法嘛,就那个

4年前 评论

准备好了,没有实战应用吗?

3年前 评论
shubiao-yao (楼主) 3年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!