一文详解通过php+roadrunner实现grpc服务端

藏色散人
Libérer: 2023-04-21 15:58:01
avant
1741 Les gens l'ont consulté

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

一文详解通过php+roadrunner实现grpc服务端

通过php+roadrunner实现grpc服务端

仓库地址:

https://github.com/zhonghaibin/php-grpc-serve
Copier après la connexion

下载源码:

git clone https://github.com/zhonghaibin/php-grpc-serve
Copier après la connexion

我用的php版本: php 8.2

安装 命令行输入

composer install
Copier après la connexion

获取 rr.exe 可执行文件命令行输入

./vendor/bin/rr get-binary
Copier après la connexion

启动服务 ./rr.exe serve
81c243d442fb599e6eb19ee73466709.png

客户端

我这里用的是ApiPost 支持grpc测试

打开apipost客户端,新建grpc,选择导入proto 选择项目目录的 grpc/protos/base/hello-world.proto 文件
Copier après la connexion

ac5ed4600a9b2af007c1ee2aebab39d.png

grpc参考文档:

roadrunner.dev/docs/plugins-grpc/2...

protoc构建步骤

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 目录下
Copier après la connexion
root ├─app │ ├─console │ ├─services │ │ ├─Task //异步任务│ │ └─HelloService.php //写自己的业务│ └─support ├─config ├─grpc │ ├─generated //使用protoc自动构建的类均存在这│ │ ├─Services //服务统一命名空间│ │ └─GPBMetadata //GRPC生成的元数据├ └─protos //所有proto存在这里
Copier après la connexion

推荐学习:《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!

Étiquettes associées:
php
source:learnku.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!