dubbo註冊到zookeeper很慢5秒一個
阿新 • • 發佈:2018-12-30
前段時間新買的Mac環境都重新整了個遍(mac 10.12+idea+jetty9),最後發覺一樣的程式碼,一樣的配置,但是服務啟動時間,從原來的幾十秒,飆升到了3分半鐘。檢視控制檯日誌,發現每個dubbo服務註冊到zookeeper都需要5秒。 懷疑zk問題,換了好幾個版本,也試用連線正常的遠端zk,都沒結果。網上搜索居然有類似問題,懸而未解(詳見:http://ask.csdn.net/questions/353225)。緩慢開發1個多月後,有一天想起來dubbo程式碼可以下載,可以debug,於是居然發現了問題的癥結所在!
經過debug,發覺是dubbo
com.alibaba.dubbo.config.ServiceConfig類獲取host的程式碼卡住了5秒
if (NetUtils.isInvalidLocalHost(host)) {
anyhost = true;
try {
host = InetAddress.getLocalHost().getHostAddress();
} catch (UnknownHostException e) {
logger.warn(e.getMessage(), e);
}
。。。
請檢查vi /etc/hosts 檔案127.0.0.0 對應的host名稱是否正確。我本機是錯誤的(因為作業系統升級會改變host名稱)
127.0.0.1 your_host_name
mac確實和windows不大一樣。