Skip to content

puppywang/zerorpc-php

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

zerorpc PHP Client

Quick start

  • check dependences
$ composer install
  • recommand installation for Mac
$ brew install zeromq --universal
$ brew install php56
$ brew install php56-msgpack
$ brew install php56-zmq
  • Installing zerorpc on Ubuntu
$ sudo pecl install channel://pecl.php.net/msgpack-0.5.5
$ sudo apt-get install pkg-config
$ git clone git://github.com/mkoppanen/php-zmq.git
$ cd php-zmq && sudo phpize && ./configure
$ sudo make && make install

Note: Don't forget to add the extensions to your php.ini

extension=msgpack.so
extension=zmq.so

Timeout Setting

  • $timeout is in milliseconds
  • $client->setTimeout($timeout) is only work on sync calls
  • Channel::dispatch($timeout) is only work on async calls

Example

Server:

Read official python server guide and start two simple time server.

$ zerorpc --server --bind tcp://*:1234 time
$ zerorpc --server --bind tcp://*:2345 time

Client:

$ php example/time.php

This will return:

Example 1: start sync call:
cost 5.0087389945984 s
Example 2: start async call:
cost 3.0069580078125 s

Know Issue

We assume most of the PHP usage scenario is webserver, so LostRemoteException is not implemented, and because of that heartbeat is disabled.

Credits

Origin main author of this repo is: @liangshan Other contributors: @wenzong, @thewinterwind

About

PHP client for zerorpc

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%