One article explains in detail the implementation of grpc server through php+roadrunner

藏色散人
Release: 2023-04-21 15:58:01
forward
1960 people have browsed it

This article brings you relevant knowledge about PHP. It mainly introduces how to implement grpc server through php roadrunner. Friends who are interested can take a look below. I hope it will be helpful to everyone.

One article explains in detail the implementation of grpc server through php+roadrunner

Implement grpc server through php roadrunner

Warehouse address:

https://github.com/zhonghaibin/php-grpc-serve
Copy after login

Download source code:

git clone https://github.com/zhonghaibin/php-grpc-serve
Copy after login

The php version I use: php 8.2

Installation command line input

composer install
Copy after login

Get the rr.exe executable file command line input

./vendor/bin/rr get-binary
Copy after login

Start the service./rr.exe serve
One article explains in detail the implementation of grpc server through php+roadrunner

Client

I am using ApiPost to support grpc testing

打开apipost客户端,新建grpc,选择导入proto  

选择项目目录的 grpc/protos/base/hello-world.proto 文件
Copy after login

One article explains in detail the implementation of grpc server through php+roadrunner

##grpc reference document:

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

protoc construction steps

1 Create Protobuf hello according to your own needs -world.proto file

2 Generate php class file through hello-world.proto

这里需要下载两个可执行文件把 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 目录下
Copy after login
root
├─app
│  ├─console 
│  ├─services        
│  │   ├─Task        //异步任务│  │   └─HelloService.php   //写自己的业务│  └─support
├─config
├─grpc
│ ├─generated         //使用protoc自动构建的类均存在这│ │  ├─Services       //服务统一命名空间│ │  └─GPBMetadata    //GRPC生成的元数据├ └─protos            //所有proto存在这里
Copy after login
Recommended learning: "

PHP Video Tutorial"

The above is the detailed content of One article explains in detail the implementation of grpc server through php+roadrunner. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
php
source:learnku.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template