diff --git a/consumers/article_service.php b/consumers/article_service.php new file mode 100644 index 0000000..89eec7c --- /dev/null +++ b/consumers/article_service.php @@ -0,0 +1,40 @@ + 'ArticleService', + // 服务接口名 + 'service' => ArticleService::class, + // 服务提供者的服务协议,可选,默认值为 jsonrpc-http + 'protocol' => 'jsonrpc-http', + // 负载均衡算法,可选,默认值为 random + 'load_balancer' => 'random', + // 这个消费者要从哪个服务中心获取节点信息,如不配置则不会从服务中心获取节点信息 + 'registry' => [ + 'protocol' => env('CONSUMERS_PROTOCOL', 'consul'), + 'address' => env('CONSUMERS_ADDRESS', 'http://127.0.0.1:8500'), + ], + // 配置项,会影响到 Packer 和 Transporter + 'options' => [ + 'connect_timeout' => 5.0, + 'recv_timeout' => 5.0, + 'settings' => [ + 'open_eof_split' => true, + 'package_eof' => "\r\n", + ], + 'retry_count' => 2, + 'retry_interval' => 100, + 'heartbeat' => 30, + 'pool' => [ + 'min_connections' => 1, + 'max_connections' => 32, + 'connect_timeout' => 10.0, + 'wait_timeout' => 3.0, + 'heartbeat' => -1, + 'max_idle_time' => 60.0, + ], + ], +]; diff --git a/src/ArticleService/ArticleService.php b/src/ArticleService/ArticleService.php new file mode 100644 index 0000000..faea4ad --- /dev/null +++ b/src/ArticleService/ArticleService.php @@ -0,0 +1,86 @@ +