溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何解決XxlRpcException:xxl-rpc request timeout at 超時(shí)問(wèn)題

發(fā)布時(shí)間:2021-06-25 11:54:05 來(lái)源:億速云 閱讀:2315 作者:chen 欄目:大數(shù)據(jù)

本篇內(nèi)容介紹了“如何解決XxlRpcException:xxl-rpc request timeout at 超時(shí)問(wèn)題”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

事件起因

昨天有同事找我到,說(shuō)他搭建的 XXL-JOB 任務(wù)調(diào)度系統(tǒng)不能工作了,調(diào)用總是出錯(cuò)(服務(wù)端返回 500)希望我能幫忙處理一下,不過(guò)說(shuō)實(shí)話我也沒(méi)有搭建過(guò) XXL-JOB 的經(jīng)驗(yàn),但是既然同事請(qǐng)求了,就只能硬著頭皮幫忙一起看下,解決的過(guò)程還算比較順利,但是發(fā)現(xiàn)網(wǎng)上這塊的資料很少,所以打算把解決過(guò)程用博客記錄下來(lái),希望可以幫助到遇到同樣問(wèn)題的同學(xué)們

解決過(guò)程

同事跟我說(shuō)起初懷疑是 Shiro 攔截了定時(shí)任務(wù)的請(qǐng)求,但是他注釋了 Shiro 相關(guān)的代碼后,XXL-JOB 的請(qǐng)求還是無(wú)法成功(請(qǐng)求成功一次后,再次請(qǐng)求就出現(xiàn)標(biāo)題的超時(shí)錯(cuò)誤),然后我查看了 XXL-JOB 的請(qǐng)求日志,服務(wù)端的 HTTP 返回碼是 500,錯(cuò)誤日志是 XxlRpcException: xxl-rpc, request timeout at ,基本排除了是 Shiro 認(rèn)證導(dǎo)致的問(wèn)題,原因是因?yàn)?Shiro 是認(rèn)證框架,認(rèn)證不通過(guò)的話,返回的錯(cuò)誤碼應(yīng)該是 401 Unauthorized 類的異常,但是從 XXL-JOB 的日志顯示這明顯是通信錯(cuò)誤,難道是某個(gè)相關(guān)的服務(wù)被關(guān)了?

帶著這個(gè)疑問(wèn)我去查了下 XXL-JOB 的文檔,項(xiàng)目要使用 XXL-JOB 的調(diào)用,就會(huì)引入的 xxl-job-core 包,xxl 客戶端項(xiàng)目就會(huì)在啟動(dòng)時(shí)使用占用一個(gè)端口監(jiān)聽(tīng)并且消費(fèi) XXL-JOB 發(fā)過(guò)來(lái)的調(diào)用(我們?cè)O(shè)置的端口是 9999),我嘗試啟動(dòng)項(xiàng)目后觀察端口占用情況,項(xiàng)目啟動(dòng)后端口 9999 是正常啟用的,然后在我使用 XXL-JOB 手動(dòng)執(zhí)行啟動(dòng)后(第一次請(qǐng)求是成功的),然后我再查看端口情況,發(fā)現(xiàn) 9999 端口就已經(jīng)關(guān)閉了,所以問(wèn)題在這里已經(jīng)被找到了, 客戶端項(xiàng)目的 xxl 監(jiān)聽(tīng)端口被關(guān)閉,導(dǎo)致后續(xù) XXL-JOB 請(qǐng)求都無(wú)法響應(yīng),自然也就請(qǐng)求超時(shí),但是這明顯不像是程序問(wèn)題,因?yàn)橐郧皼](méi)出現(xiàn)過(guò)。近期才開(kāi)始出現(xiàn)。于是我通過(guò)搜索引擎找到了 xxl-job 官方在 github 的 Issue https://github.com/xuxueli/xxl-job/issues/586 ,通過(guò) issue 的內(nèi)容看到官方已經(jīng)告知是版本的 BUG,并且在新版中這個(gè) BUG 已經(jīng)修復(fù),以下是我使用的版本信息

<dependency>
	<groupId>com.xuxueli</groupId>
	<artifactId>xxl-job-core</artifactId>
	<version>2.0.0</version>
</dependency>

并且我發(fā)現(xiàn)這個(gè)版本在 mvnrepository 也幾乎沒(méi)人用

如何解決XxlRpcException:xxl-rpc request timeout at 超時(shí)問(wèn)題

我果斷的把客戶端的 xxl-job-core 升級(jí)到官方推薦的最新版,代碼如下:

<dependency>
	<groupId>com.xuxueli</groupId>
	<artifactId>xxl-job-core</artifactId>
	<version>2.0.0</version>
</dependency>

然后啟動(dòng)項(xiàng)目,在 XXL-JOB 手動(dòng)執(zhí)行任務(wù),查看端口情況,問(wèn)題解決。

“如何解決XxlRpcException:xxl-rpc request timeout at 超時(shí)問(wèn)題”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI