比如說我有2臺(tái)服務(wù)器,其中服務(wù)器A是對(duì)外開放提供API服務(wù),服務(wù)器B處理慢任務(wù),數(shù)據(jù)分析等任務(wù),那么A和B之間用什么內(nèi)部通訊比較高效,便捷呢,(可能服務(wù)器B不是用webman)
?? RPC 遠(yuǎn)程服務(wù)調(diào)用插件:http://www.wtbis.cn/plugin/38
// 建立socket連接到內(nèi)部推送端口
$client = stream_socket_client('tcp://127.0.0.1:9512', $errorCode, $errorMessage);
if (false === $client) {
throw new \Exception('rpc failed to connect: '.$errorMessage);
}
$request = [
'class' => 'user',
'method' => 'get',
'args' => [
[
'uid' => 2023,
'username' => 'Tinywan',
]
]
];
// 發(fā)送數(shù)據(jù),注意5678端口是Text協(xié)議的端口,Text協(xié)議需要在數(shù)據(jù)末尾加上換行符
fwrite($client, json_encode($request)."\n");
// 讀取推送結(jié)果
$result = fgets($client, 10240000);
// 解析JSON字符串
$result = json_decode($result, true);
var_export($result);