timeout的一些常規解決辦法

2021-09-02 16:18:26 字數 823 閱讀 8069

一般來說timeout並不會對伺服器造成什麼大的影響,但如果timeout過多導致程序檔案描述符不夠用或伺服器端口不夠用就需要注意了。

下面是一些常規的timeout解決辦法。注意:不是長久之計

/etc/sysctl.conf

net.ipv4.tcp_tw_reuse = 1

表示開啟重用。允許將time-wait sockets重新用於新的tcp連線,預設為0,表示關閉;(安全)

net.ipv4.tcp_tw_recycle = 0

表示開啟tcp連線中time-wait sockets的快速**,預設為0,表示關閉。(不安全)

net.ipv4.tcp_fin_timeout = 30

表示如果套接字由本端要求關閉,這個引數決定了它保持在fin-wait-2狀態的時間。

net.ipv4.tcp_keepalive_time = 1200

表示當keepalive起用的時候,tcp傳送keepalive訊息的頻度。預設是2小時,改為20分鐘。

net.ipv4.ip_local_port_range = 1024  65000

表示用於向外連線的埠範圍。預設情況下很小:32768到61000,改為1024到65000。

net.ipv4.tcp_max_syn_backlog = 8192

表示syn佇列的長度,預設為1024,加大佇列長度為8192,可以容納更多等待連線的網路連線數。

net.ipv4.tcp_max_tw_buckets = 5000

git 一些常規指令

1.git初始化,新建乙個本地庫 git init 2.git help 檢視所有指令git help 3.git clone url 轉殖遠端庫 git clone 4.git remote add origin url 新增遠端庫 git remote add origin 5.git remo...

linux gdb的一些常規使用 cmake

原文 1.cmake支援gdb的實現,首先在cmakelists.txt下加入 set cmake build type debug 在下面加入 set cmake cxx flags debug env o0 wall g ggdb set cmake cxx flags release env ...

一些常規面試題

說說mysql主從同步怎麼做的吧?master提交完事務後,寫入binlog sl e連線到master,獲取binlog master建立dump執行緒,推送binglog到sl e sl e啟動乙個io執行緒讀取同步過來的master的binlog,記錄到relay log中繼日誌中 sl e再...