微服务|【微服务】用 PHP “打开” gRPC

一、软件环境

  • CentOS Linux release 7.6.1810
  • 推荐安装 lnmp 环境,参考链接 https://lnmp.org/install.html
二、“打开” gRPC 的步骤 1. 安装 gRPC 及其 php 扩展
git clone -b $(curl -L https://grpc.io/release) https://github.com/grpc/grpc cd grpc git submodule update --init make make installcd src/php/ext/grpc phpize ./configure --with-php-config=/usr/local/php/bin/php-config make make install vi /usr/local/php/etc/php.ini # 在 php.ini 文件中添加 grpc 扩展配置:extension=grpc.so

2. 安装 protobuf 及其 php 扩展
cd ../../../../third_party/protobuf ./autogen.sh ./configure make make installcd php/ext/google/protobuf phpize ./configure --with-php-config=/usr/local/php/bin/php-config make make install vi /usr/local/php/etc/php.ini # 在 php.ini 文件中添加 protobuf 扩展配置:extension=protobuf.so

3. 重启 php-fpm 【微服务|【微服务】用 PHP “打开” gRPC】执行命令 lnmp php-fpm restart 即可
4. 构建 grpc_php_plugin(用于根据 .proto 文件生成代码)并生成客户端代码
cd ../../../../../../ make grpc_php_plugin # 构建 grpc_php_plugincd examples/php ./greeter_proto_gen.sh# 生产客户端 php 代码 composer install

5. 让 grpc 服务“飞一会” ① 安装 node,参考 https://blog.csdn.net/bbwangj/article/details/82253785 第三种方式
② 运行服务端
cd ../node npm install cd dynamic_codegen node greeter_server.js

③ 打开另一个 shell 会话,运行客户端
cd ~ cd grpc/examples/php ./run_greeter_client.sh # 下一秒你将会收到来自 grpc 亲切的 Hello world 问候!

指导文档 https://grpc.io/docs/quickstart/php.html
https://blog.csdn.net/bbwangj/article/details/82253785

    推荐阅读