亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Tomcat 處理時間很小但 nginx 顯示它很大

Tomcat 處理時間很小但 nginx 顯示它很大

嚕嚕噠 2023-03-17 16:36:43
我在 nginx 后面有五個 tomcat 實例。有時nginxupstream_response_time很大,超過1秒,而tomcat本地訪問日志顯示進程時間只有50ms(我用來%D記錄進程時間)??赡艿脑蚴鞘裁匆约叭绾谓鉀Q?網絡似乎并不慢,因為其他應用程序運行速度很快。更新:似乎是 nginx upstream_response_time= %D+ 1 sec。
查看完整描述

2 回答

?
BIG陽

TA貢獻1859條經驗 獲得超6個贊

我對您的觀察的假設是數據包丟失。這對我來說似乎是最有可能的問題,因為您說的是當他們有很多請求時會發生這種情況。tcpdump要對此進行測試,您可以使用或 來監控流量iftop。如果你在 Ubuntu 下,你可以安裝并啟動后者

sudo apt-get install iftop
sudo iftop

Linux 中還有許多其他網絡監控解決方案,令人驚嘆的Wireshark適用于所有操作系統。

ifconfig [interface]包丟失的原因之一可能是碰撞,如果您在 Linux 下,您可以使用 a 檢查:

me@mymahine:~$ ifconfig eth1

eth1      Link encap:Ethernet  HWaddrf f:41:8d:ef:41:8d  

          BROADCAST MULTICAST  MTU:1500  Metric:1

          RX packets:0 errors:0 dropped:0 overruns:0 frame:0

          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000 <-------------------------- check here ---

          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

Tomcat 和 Nginx 是否在同一臺物理(或虛擬)機器上?


查看完整回答
反對 回復 2023-03-17
?
偶然的你

TA貢獻1841條經驗 獲得超3個贊

服務器通常對請求進行排隊,直到有線程可用于處理它。如果隊列中有很多請求,但只有幾個線程,單個線程處理請求的速度可能很快,但如果加上時間,請求排隊,消費者看到的時間會更長。

請參閱:How to increase number of threads in tomcat thread pool?

測量tomcat的排隊請求數

看看您是否可以增加線程數或減少 accept_count,但請記住,其他資源(如數據庫連接)的數量可能也需要增加。還要記住,更多的線程可能意味著更多的資源競爭。

嘗試為此更改參數可能是值得的。通常訪問日志還應該顯示消息排隊處理的時間,但我不確定。


查看完整回答
反對 回復 2023-03-17
  • 2 回答
  • 0 關注
  • 142 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號