이 글은 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
Get rr. exe 사용 가능 파일 명령줄 입력
./vendor/bin/rr get-binary
을 실행하여 서비스를 시작합니다./rr.exe Serve
grpc 테스트를 지원하기 위해 ApiPost를 사용하고 있습니다
打开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 Video Tutorial》
위 내용은 한 기사에서는 php+roadrunner를 통한 grpc 서버 구현에 대해 자세히 설명합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!