部署在本機的Tomcat響應速度慢!



問題現像:
新開一個瀏覽器,打開網站(本機部署),第一次請求的時候響應很慢, 但是第二次響應就很快,但是停止操作幾分鍾后,再請求又變慢。
或者第一次請求響應后,關閉瀏覽器再重新打開,請求響應也會很慢! ( 注:項目訪問地址是在本機配的一個域名 www.hooblogs.com)
 
猜測及驗證:
1. tomcat的問題,重新安裝了一個tomcat, 情況依然存在。
2. 第一次請求后,在代碼中debug了一個斷點,發現隔幾秒鍾才能到達斷點處。
3. 因為項目部署采用apache+tomcat的結構,其中有用到apache的反向代理,所以猜測是否有可能是apache的原因導制,
   停掉apache, 直接訪問tomcat, 但是現像依然存在。
4. tomcat的內存不夠,於是調大tomcat的內存資源(512M---1G), 現像依然存在。
5. 項目在本機進行部署時,配了域名(修改hosts, 添加了 www.hooblogs.com) 猜測是域名解析過慢導制的。
   於是用: http://localhost   或者 http://127.0.0.1 直接訪問,發現響很快,之前的現像沒有了。
 
分析原因:
因為公司用的是內部局域網,不能直接訪問外網,我們在網絡連接那里配置了默認的DNS(域名解析系統)。
> 當新打開一個瀏覽器並發出一個請求時,因為使用了域名訪問,瀏覽器會優先的去請求局域網的DNS解析這個域名
>  到了DNS之后,DNS在解析的時候,發現解析不了,等解析超時后,又告之瀏覽器,它搞不定。
>  然后瀏覽器這才通過本機的DNS去解析,發現解析成功,然后才指向本機的tomcat. (所以第一次請求會非常慢)
>  第二次請求的時候,因為瀏覽器的記憶性, 所以第二次就直接通過本機的DNS解析,所以響應就很快!
>  但是瀏覽器的記憶力不是很好,容易健忘, 過了幾分鍾它就忘了, 所以停止操作幾分鍾后,第一次的響應又非常慢!
 
為了驗證上面的推斷,我撥掉本機的網線,請求本機項目地址( http://www.hooblogs.com) 發現響應速度很快。
 
解決辦法:
修改網絡連接的首先DNS, 改為 127.0.0.1, 備用DNS改為局域網的DNS.
修改前:
 
修改后:
 
這樣既不影響對局域網的使用,又不影響你在本機的開發測試。
 
 
 
 




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM