RPC
一个启动命令完成rpc服务!!不与其他业务冲突!!用途,做soa服务化管理时。用于分布式。
1.启用config/app.php 中的serviceProviders里面的RpcServiceProvider

2.配置config/rpc.php文件
<?php
return [
'cache_dir' => 'runtime/rpc',
'current_server' => 'tcp',
'server' => [
'tcp' => [
'host' => '0.0.0.0',
'port' => '9396',
]
],
'setting' => [
'worker_num' => 25,
'backlog' => 128,
'max_request' => 2000,
'heartbeat_idle_time' => 30,
'heartbeat_check_interval' => 10,
'dispatch_mode' => 3,
],
];
3.rpc服务启动
服务启动 php rpc_server.php &
服务热重启 php rpc_server.php -s reload
注意服务会默认开放src/Services下面所有服务的公有函数的调用
4.client调用服务
$res = \Rpc::call('User:User', 'getUser', [1]);
$res = \Rpc::service('User:User')->getUser(1);
var_dump($res);