監(jiān)聽(tīng)內(nèi)部服務(wù), 當(dāng)接口調(diào)用時(shí)需要向此服務(wù)推送消息,應(yīng)該用什么方案
http://wtbis.cn/q/8323 這個(gè)是反向推送的
還有刷到帖子說(shuō)用 Channel 組件 還沒(méi)去研究
之前有使用過(guò)GatewayWorker 是workerman做服務(wù)端向客戶端推送消息, 這個(gè)業(yè)務(wù)場(chǎng)景自我感覺(jué)不可行
$fp = stream_socket_client("tcp://ip:port", $errno, $errstr);
if (!$fp) {
echo 'error';
} else {
fwrite($fp,$message);
fclose($fp);
myBwLog('--success--'.$str_hex_message);
}
服務(wù)端是別的應(yīng)用程序提供的Asterisk 我單獨(dú)起了上面的tcp客戶端. 然后如果有新的http請(qǐng)求進(jìn)來(lái) 需要向tcp服務(wù)發(fā)消息. 因?yàn)閠cp客戶端是長(zhǎng)連接的, 如果再去用stream_socket_client連接會(huì)報(bào)同一個(gè)端口問(wèn)題的吧.