pure php grpc#1
pure php grpc#1ZhouyihaiDing wants to merge 3 commits intoGoogleCloudPlatform:masterfrom ZhouyihaiDing:grpc-php
Conversation
|
Thanks for your pull request. It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). 📝 Please visit https://cla.developers.google.com/ to sign. Once you've signed, please reply here (e.g.
|
| <?php | ||
| require dirname(__FILE__).'/vendor/autoload.php'; | ||
|
|
||
| $client = new \Grpc\Gateway\Testing\EchoServiceClient('localhost:9091', []); |
There was a problem hiding this comment.
Do we re-use the plugin from grpc-php(C-core)? Generated Client doesn't have the default value for it. Something like credentials must be set at the second parameter.
| { | ||
| $active = null; | ||
| while (!$this->stream_end || $this->received_data->valid()) { | ||
| if($this->received_data->valid()){ |
There was a problem hiding this comment.
if => while
or add
if($active<=0) break; to line 137 because curl_multi_select is blocked until activity or timeout. If there are no more activity with valid $this->received_data, every yield will wait for a time-out time.
| @@ -0,0 +1,13 @@ | |||
| { | |||
There was a problem hiding this comment.
Let's skip the example code for now. As we probably want to use the same proto defined in grpc report instead of using echo.prot here.
There was a problem hiding this comment.
All example related files are removed.
| @@ -0,0 +1,24 @@ | |||
| { | |||
There was a problem hiding this comment.
Move this to /src/Grpc folder. The dir structure would be something like:
/src
/test
/doc
...
|
It would be better to submit this to https://github.com/grpc/grpc, I believe. Or create your own library and use composer |
Try to implement gRPC with pure PHP.
Use curl to send and receive rpc with http2_prior_knowledge.