tid=66248& 本帖最後由 IT_man 於 2017-8-29 14:56 編輯 2 T* L( ~2 ?/ N- @, D
2 w2 f) [$ P% R3 L2 h2 E9 r
Linux 預設是沒有下述的調整,因此我們必須進行最佳化的調整:; K* ~! ?: r# C8 l- D
. N! B' l9 m$ [#vi /etc/sysctl.conf
/ n/ K) M( g. L; J7 l; K I### 改進系統記憶體管理 ###, z9 Q- s% H# K
! R0 N2 c$ t; Q. {1 J9 ~: G
) N$ [. _4 O4 | t0 s8 ?3 `: H# 加大檔案處理及inode快取
! T! ^% l7 q( i( i# M9 i" gfs.file-max = 2097152
/ W8 G5 ?) f# y8 f( [) k, x
1 F) l# j$ z! q3 |; A
3 k- |* M9 H; d! o$ F {# 較少的交換
/ f/ K) h" D9 k& Hvm.swappiness = 10
$ Y2 c h1 m: O* [% w/ ?& ?/ Jvm.dirty_ratio = 60
" m# r- i: p( ?* Dvm.dirty_background_ratio = 20 \3 h% k$ n* R& i' L, }
) X' L1 {) A7 e& @+ z4 x
/ q8 ^! {. T# J4 _, u### 一般的網路安全選項 ###
; Z5 ]7 V2 |4 P
, x- A, e0 z3 L' D$ f* s" l. s! g/ \6 M, T, k9 b6 {# `
# 被動(passive)TCP連接的SYNACKs次數
8 D4 ~; P% X# X! b! q$ gnet.ipv4.tcp_synack_retries = 2
5 ]/ F$ P9 S; B- v
4 s1 F1 U8 A }) B* b: v+ ?3 @1 N+ w
# 允許本機網路連接阜範圍
5 j3 }: f; V6 b) g! c5 e4 |net.ipv4.ip_local_port_range = 2000 65535" ?$ K+ @; A1 A* S0 I: G
9 a+ g- A( M: y. b1 ~+ Z
4 G3 ]3 u1 l6 s: h' w! B# 反制TCP Time-Wait的保護
- x7 z3 f7 H1 x: j7 \net.ipv4.tcp_rfc1337 = 1
8 a7 i: a5 x- `" \4 i
8 J; N; z/ m3 K( N% Z1 R: I
. E5 W. i1 ^8 a% ?7 o3 B# 降低對 tcp_fin_timeout connection 時間的預設值
7 D* b- h1 z v2 Y" Jnet.ipv4.tcp_fin_timeout = 15
) `' @8 T3 B _( p1 J# q' R9 h: g5 M0 p" N; f7 W8 t+ N
1 x1 y* Y# V% H7 {/ M% D: w# 降低連線存活時間的預設值# ^8 S7 a1 m" o# V' d: Q
net.ipv4.tcp_keepalive_time = 300* O$ M8 d) y2 f; I
net.ipv4.tcp_keepalive_probes = 52 X! Z0 s3 @$ T% `9 Q
net.ipv4.tcp_keepalive_intvl = 15, i) N+ P' z, B9 ^( M
( }4 Y, U% V% t8 x: h! I4 j1 |: i
" A* h0 A5 x! g" _### 調整網路效能 ###* V- F3 ?4 s o* I4 T/ l: ]
5 c- a" U6 b% v- S
0 H; z( |2 e% w3 Z. Q: s# 預設的Socket接收緩存' [$ j$ E% ^: Q& y; s; d2 S: _4 S
net.core.rmem_default = 31457280
2 r% v6 S# I* O
. `% o- f; i- _2 Z
" o& r, k+ X; `# W# 最大的Socket接收緩存: Q) Z2 @4 z1 L: ^/ q
net.core.rmem_max = 125829126 {7 N$ G3 R, \ e, ~( ]5 H( ~- N9 f) ^ u
3 _- E9 O0 y) A2 q+ G
/ n+ o! b! B& x# Y, P) `: N- w# 預設的Socket傳送緩存7 o) Y4 T1 R+ [* P e0 m
net.core.wmem_default = 31457280
6 ?2 o; \- R; b& ~; S' O& y' W8 D% f4 j( C1 x- m1 O
* L, ^$ j n$ b& X# | t. e3 |
# 最大的Socket傳送緩存
! I% S. `" |( i" ?) T" s' b% c$ [net.core.wmem_max = 125829127 Q% n$ N4 g0 f- C. h
! N: A6 ~: B* o& |* V) D* V
4 K, x0 O) P3 ^# i) P
# 加大網路連入數$ F% ^' O4 ^4 |
net.core.somaxconn = 4096) @* v' o! C1 |0 S* Z2 A3 U7 U1 ~
" l; |& w, r: @9 A% B9 D `, q1 q% t$ G+ G( U
# 加大網路連入的backlog" K6 E# P% _# m3 N
net.core.netdev_max_backlog = 65536
& J/ F/ v! E: J1 u/ N
! {1 @0 D1 o2 r7 ~/ \ K. m, K+ Z5 w# @! X
# 加大記憶體緩存的最大量
Q$ u1 F% A7 B v4 H7 lnet.core.optmem_max = 251658240 X, W+ Y. o! S$ k4 W; o p
" C8 X! j4 X* h" n, F
( `1 a- w. N7 T# Increase the maximum total buffer-space allocatable加大可定址緩存空間的最大總量6 N" j- Q- U3 D: S8 n7 ~* u; a2 K
# This is measured in units of pages (4096 bytes)
8 V. h, ~) m$ C8 w5 M" ^# }2 Bnet.ipv4.tcp_mem = 65536 131072 262144
+ Y; a3 [: P# e5 xnet.ipv4.udp_mem = 65536 131072 262144! N" h+ _0 T& U; G; J: m, I
Q! W% S$ }7 w, ?
, G1 E/ D) x) H6 F6 a# 加大讀取緩存可定址空間4 h6 O& t+ w9 P+ Z
net.ipv4.tcp_rmem = 8192 87380 16777216
7 Q! b& B7 Q, i" lnet.ipv4.udp_rmem_min = 16384
; F I; m9 w5 B) o1 F+ x/ C R8 K
% h: k! \& l6 r9 ?- s. r, W4 J6 f+ e9 x' C, n
# 加大寫入緩存可定址空間
% K$ c/ R9 W% Q- ?/ G# Wnet.ipv4.tcp_wmem = 8192 65536 16777216
" t3 B! D9 W) I( s; e8 Knet.ipv4.udp_wmem_min = 16384- o$ m' }/ h: L( [
# C. _% N2 @: ]3 c. D b
6 q; ~7 J* [5 u7 t C# 加大tcp-time-wait桶子池區數量以預防簡易的DOS攻擊: C9 S- j; ]: X) i
net.ipv4.tcp_max_tw_buckets = 1440000
4 L6 w# D1 d( Nnet.ipv4.tcp_tw_recycle = 1
( R; Z$ G* g$ Y, ^% W, inet.ipv4.tcp_tw_reuse = 19 I; y7 J! f2 a0 N) y
. d6 t1 M! h5 e0 W& `2 r! ~
! y& Y! G9 j, O9 l4 ^# V% }存檔以生效4 s; }+ g5 g, }6 G3 d3 T9 M
#sysctl -p 載入已變更( W# F, b8 l& K; S
( J4 P& i: _( d: c6 x4 L& l" @0 Y: o/ `2 g l- q
參考來源:
) H/ l- i% A H7 Z; e( A3 Q/ W1 o% I' b/ \8 m* g' r' p% c; W
z0 I7 I; y6 x9 o6 y
https://easyengine.io/tutorials/linux/sysctl-conf/6 U2 |* M/ A4 r
# c/ C3 ]& W( ~/ `- t
9 b% J, h/ @2 q2 o9 }6 W: W
0 J0 v' v9 }$ ]) Y2 U4 [
& y1 r2 R8 r6 C4 ~6 A, e, s |