netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'html
發送http請求須要添加超時時間,不然大量的請求會致使被請求方,積累好多待關閉請求,致使後續請求長時間等待,沒法釋放服務器
參考:https://blog.csdn.net/shootyou/article/details/6615051tcp
參考:http://www.javashuo.com/article/p-dihbxlrq-cu.htmlide
參考:http://www.javashuo.com/article/p-xroxdmfg-ck.html優化
優化系統參數:idea
net.ipv4.tcp_tw_recycle
優化步驟:
1,從單線程修改成線程池
2,每10頁等待10分鐘
3,服務器從2核升級到4核
4,優化服務器配置net.ipv4.tcp_tw_recycle
5,請求添加3個超時時間ConnectTimeout,SocketTimeout,ConnectionRequestTimeout 3分鐘
6,發送請求作異常捕獲(超時異常)超時以後能繼續執行
7,排查程序是否有死循環等異常
8,檢查帶寬多少
9,查看堆棧信息spa