GatewayClient在調(diào)用方法前需要設(shè)置registerAddress,但是這個屬性是靜態(tài)的,那在GatewayWorker是多實例(多應用)或者項目是常駐內(nèi)存的情況下,這個靜態(tài)的registerAddress屬性的設(shè)置會不會互相影響到?
本質(zhì)上GatewayClient就是一個發(fā)送特定數(shù)據(jù)的tcp或者udp的類庫,確保registerAddress就行,會不會混亂取決你如何寫,就好比數(shù)據(jù)庫連接
我現(xiàn)在是采用官方推薦的GatewayWorker和TP框架結(jié)合的方式,然后用swoole做http服務器(workerman應該也是類似,常駐內(nèi)存),非阻塞I/O,是不是請求A遇到I/O就會切換處理請求B,如果請求B改變了registerAddress的值,那么再切換回請求A是不是就會出錯呢?目前在厘清這里面的問題
如果GatewayClient如果要設(shè)置多個registerAddress,不要使用swoole和swow,很大概率會出現(xiàn)并發(fā)問題。
除非你會加鎖,讓 registerAddressse設(shè)置和調(diào)用Gateway接口是一個完整的操作,期間不會被其它協(xié)程修改registerAddressse