本篇文章给大家带来了关于PHP的相关知识,其中主要跟大家介绍怎么通过php+roadrunner实现grpc服务端,感兴趣的朋友下面一起来看一下吧,希望对大家有帮助。

仓库地址:
https://github.com/zhonghaibin/php-grpc-serve
下载源码:
git clone https://github.com/zhonghaibin/php-grpc-serve
我用的php版本: php 8.2
安装 命令行输入
composer install
获取 rr.exe 可执行文件命令行输入
./vendor/bin/rr get-binary
启动服务 ./rr.exe serve
我这里用的是ApiPost 支持grpc测试
打开apipost客户端,新建grpc,选择导入proto 选择项目目录的 grpc/protos/base/hello-world.proto 文件

roadrunner.dev/docs/plugins-grpc/2...
1 根据自己的需求创建Protobuf的 hello-world.proto 文件
2 通过 hello-world.proto 生成 php 类文件
这里需要下载两个可执行文件把 hello-world.proto 生成 php文件, 因为我用的是win10: 所以下载的是 protoc.exe 和 protoc-gen-php-grpc.exe 这两个文件我放在项目里 protoc-22.3-win64 文件夹里面,如果你和我环境一样直接用我下载好的即可,其他平台请自行下载 下载地址:https://github.com/roadrunner-server/roadrunner/releases 生成php文件命令如下:./protoc.exe --plugin=protoc-gen-php-grpc.exe --php_out=./ --php-grpc_out=./ hello-world.proto 这里会在当前目录下生成两个文件夹:GPBMetadata 和 Services 把生成好的文件夹复制到 项目目录的 grpc/generated 目录下
root ├─app │ ├─console │ ├─services │ │ ├─Task //异步任务│ │ └─HelloService.php //写自己的业务│ └─support ├─config ├─grpc │ ├─generated //使用protoc自动构建的类均存在这│ │ ├─Services //服务统一命名空间│ │ └─GPBMetadata //GRPC生成的元数据├ └─protos //所有proto存在这里
推荐学习:《PHP视频教程》
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!
Comment ouvrir le fichier php
Comment supprimer les premiers éléments d'un tableau en php
Que faire si la désérialisation php échoue
Comment connecter PHP à la base de données mssql
Comment connecter PHP à la base de données mssql
Comment télécharger du HTML
Comment résoudre les caractères tronqués en PHP
Comment ouvrir des fichiers php sur un téléphone mobile