問題描述 Hi walkor , 執(zhí)行./vendor/bin/phpunit --bootstrap support/bootstrap.php tests/Test.php,時,報Attempt to read property "name" on null。查了下原因是我定義的 app\bootstrap\MqttClient::class類里面的public static function...
問題描述 Hi,walkor,分布式部署websocket服務(wù)時使用Channel組件進行通訊,發(fā)送數(shù)據(jù)時意外出現(xiàn)錯誤 打印了unserialize($data)中的$data數(shù)據(jù),數(shù)據(jù)如下圖所示。是什么原因呢? 程序代碼 報錯信息 ErrorException: unserialize(): Extra data starting at offset 294 of 295 bytes in xx/vendor/w...
問題描述 Hi walkor,請問webman自定義進程里面如何拿到work實例呢? class Websocket { public function onWorkerStart($worker) { } public function onMessage(TcpConnection $connection, $data) { //這里如何拿到work實例呢? echo "{$data}\n"; ...
channel server只能啟動一個,如何做到高可用 Hi walkor,因為項目需要做到高可用,websocket放在了多臺服務(wù)器上,但channel server只能啟動一個,如果部署channel server的服務(wù)器宕機了,相當(dāng)于整個websocket服務(wù)器間通訊不能用了,有什么好的辦法呢?...
Hi walkor, 在使用workerman的RPC時,我有時候在debug模式下調(diào)試項目時,能看到日志欄突然打印一句“tr: write error: Broken pipe” (注:沒有其它信息打印,只有這一句)。請問這是什么原因?qū)е碌模?..
Hi walkor, 今天查看webman日志時,顯示有個奇怪的請求,路由是remote/fgt_lang,參數(shù)是{"lang":"/../../../..//////////dev/cmdb/sslvpn_websession"},請問這個請求是怎么來的?...
Hi walkor, Mqtt\Client組件自帶重連功能,但我現(xiàn)在mqtt服務(wù)端驗證機制是需要驗證客戶端的當(dāng)前登錄時的時間戳的,所以現(xiàn)在的問題是如果mqtt重啟后,mqtt客戶端會重連失敗(因為option傳參里面還是用的上一次登錄的時間戳,服務(wù)端會校驗失敗),請問如何在mqtt客戶端重連時修改option的參數(shù)呢?這樣的話在重連時username或者password參數(shù)就能寫入當(dāng)前的時間戳了。...
Hi,walkor: 這個問題困擾我好些天了,想請大大給個建議,用了幾年workerman了,相當(dāng)穩(wěn)定。最近有個物聯(lián)網(wǎng)項目中,功能是前端頁面對設(shè)備進行遠程控制,我在HTTP接口業(yè)務(wù)代碼中是用AsyncConnection異步向TCP服務(wù)下發(fā)控制指令的,所以設(shè)備模塊應(yīng)答的結(jié)果也是異步收到。此時HTTP接口響應(yīng)時,頁面是不知道模塊是否應(yīng)答成功的。 請問大大,接口業(yè)務(wù)代碼里我向TCP服務(wù)發(fā)送異步請求后,如何等待拿到異步結(jié)果...
Hi 大大, 今天在開發(fā)時意外出現(xiàn)一個這樣的問題(用了workerman幾年了沒有出現(xiàn)過),就是前端請求接口時,數(shù)據(jù)時有時無。查看日志才發(fā)現(xiàn),報了一個這樣的問題: msg:stream_select(): unable to select [4]: Interrupted system call (max_fd=5)。 請問這個問題是怎么出現(xiàn)的? 我要如何解決呢。感謝! (另外,我用的是RPC,明明類里面有我寫好的...
Hi walkor, 我在項目根目錄下使用php status命令時,發(fā)現(xiàn)連接數(shù)不斷變大,遠超過真實設(shè)備的連接數(shù)量。使用connections命令查看具體連接數(shù)時,發(fā)現(xiàn)很多異常連接(如圖所示,Text協(xié)議部分是異常的,HexNL協(xié)議的連接是正常的),請問這種連接是什么原因?qū)е碌模?(5002是我的本地異步服務(wù)端口。)...
Hi walkor, 最近發(fā)現(xiàn)了一個奇怪的現(xiàn)象,使用php start.php status命令查看信息時,connections的值是不斷增加的,即每執(zhí)行一下php start.php status命令后,查看到的connections值是不斷增加的。不知道會達到什么值或過多久,再使用但使用php start.php status命令時,connections值會重置,然后繼續(xù)增加,周而復(fù)始。但php start....
Dear walkor, 請問一臺2CPU 4M內(nèi)存的服務(wù)器能同時運行幾十萬個定時器嗎? (注:定時器的業(yè)務(wù)不是阻塞的,阻塞的業(yè)務(wù)我放到了異步服務(wù)里),感謝~...
Hi walkor,? 請問為什么靜態(tài)變量$seconds 放到定時器中聲明時,進程中$seconds的值是不共享的? 我每次發(fā)一個請求時,$seconds的初始值都是0。 如果我直接在onMessage里面聲明$seconds = 0時,$seconds是共享的。如下: $timer_id = Timer::add(1, ? ? ? ? ? ? function? () use( &$timer_id) ?...
Hi,walkor, 遇到一個這樣的怪問題,在Workerman-RPC中,我封裝了一個這樣的獲取隨機數(shù)的靜態(tài)方法 如下: public static function getRandomNumber () { $str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz123456789'; retur...
Hi,walkor, 遇到一個這樣的怪問題,在Workerman-RPC中,我封裝了一個這樣一個獲取隨機數(shù)的靜態(tài)方法 如下: public static function getRandomNumber () { $str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz123456789'; retu...
Hi walkor, 用Workerman作為TCP服務(wù)器時, 設(shè)備同時連接時, self::$statistics++; $this->id = $this->_id = self::$_idRecorder++; 這行代碼在給_id賦值時會出現(xiàn)重復(fù)的情況, 請教下walkor,有沒有不管幾千上萬臺設(shè)備同時連接服務(wù)器時clientid不重復(fù)的算法,感激不盡~...
Hi Walkor, 我們目前在做的物聯(lián)網(wǎng)項目(智能家居方面),用的workerman,10臺服務(wù)器作分布式部署,分布式通訊組件是Channel,那么, 1 .Channel的Server需要考慮負載的問題嗎? 10臺服務(wù)器的workerman分布式部署時,j單獨分配一臺服務(wù)器給Channel Server足夠嗎? 2. 每臺服務(wù)器wokerman啟用8個進程,對于mysql或者redis的使用,我是在onW...