国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
linux 調(diào)優(yōu)系列
inux 調(diào)優(yōu)系列
2009-03-13 15:45:04
Linux系統(tǒng)內(nèi)核:修改TCP/IP調(diào)優(yōu)參數(shù)
所有的TCP/IP調(diào)優(yōu)參數(shù)都位于/proc/sys/net/目錄。例如, 下面是最重要的一些調(diào)優(yōu)參數(shù), 后面是它們的含義:
1. /proc/sys/net/core/rmem_max — 最大的TCP數(shù)據(jù)接收緩沖。
2. /proc/sys/net/core/wmem_max — 最大的TCP數(shù)據(jù)發(fā)送緩沖。
3. /proc/sys/net/ipv4/tcp_timestamps — 時間戳在(請參考RFC 1323)TCP的包頭增加12個字節(jié)。
4. /proc/sys/net/ipv4/tcp_sack — 有選擇的應(yīng)答。
5. /proc/sys/net/ipv4/tcp_window_scaling — 支持更大的TCP窗口. 如果TCP窗口最大超過65535(64KB), 必須設(shè)置該數(shù)值為1。
6. rmem_default — 默認的接收窗口大小。
7. rmem_max — 接收窗口的最大大小。
8. wmem_default — 默認的發(fā)送窗口大小。
9. wmem_max — 發(fā)送窗口的最大大小。
/proc目錄下的所有內(nèi)容都是臨時性的, 所以重啟動系統(tǒng)后任何修改都會丟失。
建議在系統(tǒng)啟動時自動修改TCP/IP參數(shù):
把下面代碼增加到/etc/rc.local文件, 然后保存文件, 系統(tǒng)重新引導(dǎo)的時候會自動修改下面的TCP/IP參數(shù):

echo 256960 > /proc/sys/net/core/rmem_default
echo 256960 > /proc/sys/net/core/rmem_max
echo 256960 > /proc/sys/net/core/wmem_default
echo 256960 > /proc/sys/net/core/wmem_max
echo 0 > /proc/sys/net/ipv4/tcp_timestamps
echo 1 > /proc/sys/net/ipv4/tcp_sack
echo 1 > /proc/sys/net/ipv4/tcp_window_scaling
TCP/IP參數(shù)都是自解釋的, TCP窗口大小設(shè)置為256960, 禁止TCP的時間戳(取消在每個數(shù)據(jù)包的頭中增加12字節(jié)), 支持更大的TCP窗口和TCP有選擇的應(yīng)答。
上面數(shù)值的設(shè)定是根據(jù)互連網(wǎng)連接和最大帶寬/延遲率來決定。
注: 上面實例中的數(shù)值可以實際應(yīng)用, 但它只包含了一部分參數(shù)。
另外一個方法: 使用 /etc/sysctl.conf 在系統(tǒng)啟動時將參數(shù)配置成您所設(shè)置的值:

net.core.rmem_default = 256960net.core.rmem_max = 256960net.core.wmem_default = 256960net.core.wmem_max = 256960net.ipv4.tcp_timestamps = 0net.ipv4.tcp_sack =1net.ipv4.tcp_window_scaling = 1
linux文件描述符1024限制
今天突然報了 open files limit...原來linux默認的文件描述符1024(ulimit -a命令查看)被用光了,為了增大文件描述符號,說要編譯內(nèi)核才行,今天研究了半天,居然沒成功,后來干脆,用 ulimit -HSa 65536 (1MB64個文件描述符)似乎也生效,這里特別需要注意的地方,別忘了將上面一句加入到/etc/profile里面去,然后用lsof -p JAVA_PID|wc -l 查看jboss似乎已經(jīng)可以跑到了1758.

附:
文件描述符是一個簡單的整數(shù),用以標明每一個被進程所打開的文件和socket。第一個打開的文件是0,第二個是1,依此類推。Unix 操作系統(tǒng)通常給每個進程能打開的文件數(shù)量強加一個限制。更甚的是,unix 通常有一個系統(tǒng)級的限制。

因為squid 的工作方式,文件描述符的限制可能會極大的影響性能。當squid 用完所有的文件描述符后,它不能接收用戶新的連接。也就是說,用完文件描述符導(dǎo)致拒絕服務(wù)。直到一部分當前請求完成,相應(yīng)的文件和socket 被關(guān)閉,squid 不能接收新請求。當squid發(fā)現(xiàn)文件描述符短缺時,它會發(fā)布警告。

在運行./configure 之前,檢查你的系統(tǒng)的文件描述符限制是否合適,能給你避免一些麻煩。大多數(shù)情況下,1024 個文件描述符足夠了。非常忙的cache可能需要4096或更多。在配置文件描述符限制時,我推薦設(shè)置系統(tǒng)級限制的數(shù)量為每個進程限制的2 倍。
2、怎么突破,具體方法?
先查看LINUX默認的文件描述符:
# ulimit -n
1024
我們用命令
ulimit -HSn 65536
來增大文件描述符,然后編譯安裝squid,
把ulimit -HSn 65536放到/etc/rc.d/rc.local讓啟動時加載。
以下為轉(zhuǎn)載:
Linux

在Linux 上配置文件描述符有點復(fù)雜。在編譯squid 之前,你必須編輯系統(tǒng)include 文件中的一個,然后執(zhí)行一些shell 命令。請首先編輯/usr/include/bits/types.h 文件,改變__FD_SETSIZE 的值:
#define _ _FD_SETSIZE 8192

下一步,使用這個命令增加內(nèi)核文件描述符的限制:
# echo 8192 >; /proc/sys/fs/file-max

最后,增加進程文件描述符的限制,在你即將編譯squid 的同一個shell 里執(zhí)行:
sh# ulimit -Hn 8192

該命令必須以root 運行,僅僅運行在bash shell。不必重啟機器。

使用這個技術(shù),你必須在每一次系統(tǒng)啟動后執(zhí)行上述echo 和ulimit 命令,或者至少在squid 啟動之前。假如你使用某個rc.d 腳本來啟動squid,那是一個放置這些命令的好地方。
基本系統(tǒng)調(diào)節(jié)

  在對系統(tǒng)的 Apache、PHP 和 MySQL 組件進行調(diào)優(yōu)之前,應(yīng)該花一些時間確保底層 Linux 組件的運行正常。還應(yīng)該對正在運行的服務(wù)進行縮減,只運行需要的那些服務(wù)。這不但是一種良好的安全實踐,而且可以節(jié)省內(nèi)存和 CPU 時間。

  一些快速的內(nèi)核調(diào)優(yōu)措施

  大多數(shù) Linux 發(fā)布版都定義了適當?shù)木彌_區(qū)和其他 Transmission Control Protocol(TCP)參數(shù)??梢孕薷倪@些參數(shù)來分配更多的內(nèi)存,從而改進網(wǎng)絡(luò)性能。設(shè)置內(nèi)核參數(shù)的方法是通過 proc 接口,也就是通過讀寫 /proc 中的值。幸運的是,sysctl 可以讀取 /etc/sysctl.conf 中的值并根據(jù)需要填充 /proc,這樣就能夠更輕松地管理這些參數(shù)。清單 2 展示在互聯(lián)網(wǎng)服務(wù)器上應(yīng)用于 Internet 服務(wù)器的一些比較激進的網(wǎng)絡(luò)設(shè)置。

清單 2. 包含較為激進的網(wǎng)絡(luò)設(shè)置的 /etc/sysctl.conf
                
# Use TCP syncookies when needed
net.ipv4.tcp_syncookies = 1
# Enable TCP window scaling
net.ipv4.tcp_window_scaling: = 1
# Increase TCP max buffer size
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
# Increase Linux autotuning TCP buffer limits
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
# Increase number of ports available
net.ipv4.ip_local_port_range = 1024 65000

  將這些設(shè)置添加到 /etc/sysctl.conf 的現(xiàn)有內(nèi)容中。第一個設(shè)置啟用 TCP SYN cookie。當從客戶機發(fā)來新的 TCP 連接時,數(shù)據(jù)包設(shè)置了 SYN 位,服務(wù)器就為這個半開的連接創(chuàng)建一個條目,并用一個 SYN-ACK 數(shù)據(jù)包進行響應(yīng)。在正常操作中,遠程客戶機用一個 ACK 數(shù)據(jù)包進行響應(yīng),這會使半開的連接轉(zhuǎn)換為全開的。有一種稱為 SYN 泛濫(SYN flood) 的網(wǎng)絡(luò)攻擊,它使 ACK 數(shù)據(jù)包無法返回,導(dǎo)致服務(wù)器用光內(nèi)存空間,無法處理到來的連接。SYN cookie 特性可以識別出這種情況,并使用一種優(yōu)雅的方法保留隊列中的空間(細節(jié)參見 參考資料 一節(jié))。大多數(shù)系統(tǒng)都默認啟用這個特性,但是確保配置這個特性更可靠。

  啟用TCP窗口伸縮使客戶機能夠以更高的速度下載數(shù)據(jù)。TCP 允許在未從遠程端收到確認的情況下發(fā)送多個數(shù)據(jù)包,默認設(shè)置是最多 64 KB,在與延遲比較大的遠程客戶機進行通信時這個設(shè)置可能不夠。窗口伸縮會在頭中啟用更多的位,從而增加窗口大小。

  后面四個配置項增加 TCP 發(fā)送和接收緩沖區(qū)。這使應(yīng)用程序可以更快地丟掉它的數(shù)據(jù),從而為另一個請求服務(wù)。還可以強化遠程客戶機在服務(wù)器繁忙時發(fā)送數(shù)據(jù)的能力。

  最后一個配置項增加可用的本地端口數(shù)量,這樣就增加了可以同時服務(wù)的最大連接數(shù)量。

  在下一次引導(dǎo)系統(tǒng)時,或者下一次運行 sysctl -p /etc/sysctl.conf 時,這些設(shè)置就會生效。

  配置磁盤來提高性能

  磁盤在 LAMP 架構(gòu)中扮演著重要的角色。靜態(tài)文件、模板和代碼都來自磁盤,組成數(shù)據(jù)庫的數(shù)據(jù)表和索引也來自磁盤。對磁盤的許多調(diào)優(yōu)(尤其是對于數(shù)據(jù)庫)集中于避免磁盤訪問,因為磁盤訪問的延遲相當高。因此,花一些時間對磁盤硬件進行優(yōu)化是有意義的。

  首先要做的是,確保在文件系統(tǒng)上禁用 atime 日志記錄特性。atime 是最近訪問文件的時間,每當訪問文件時,底層文件系統(tǒng)必須記錄這個時間戳。因為系統(tǒng)管理員很少使用 atime,禁用它可以減少磁盤訪問時間。禁用這個特性的方法是,在 /etc/fstab 的第四列中添加 noatime 選項。清單 3 給出了一個配置示例。

  清單3. 演示如何啟用 noatime 的 fstab 示例
                
/dev/VolGroup00/LogVol00 /                      ext3    defaults,noatime        1 1
LABEL=/boot             /boot                   ext3    defaults,noatime        1 2
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
sysfs                   /sys                    sysfs   defaults        0 0
LABEL=SWAP-hdb2         swap                    swap    defaults        0 0
LABEL=SWAP-hda3         swap                    swap    defaults        0 0

  在清單3中只修改了 ext3 文件系統(tǒng),因為 noatime 只對駐留在磁盤上的文件系統(tǒng)有幫助。為讓這一修改生效,不需要重新引導(dǎo);只需重新掛裝每個文件系統(tǒng)。例如,為了重新掛裝根文件系統(tǒng),運行 mount / -o remount。

  有多種磁盤硬件組合,而且 Linux 不一定能夠探測出訪問磁盤的最佳方式??梢允褂?hdparm 命令查明和設(shè)置用來訪問 IDE 磁盤的方法。hdparm -t /path/to/device 執(zhí)行速度測試,可以將這個測試結(jié)果作為性能基準。為了使結(jié)果盡可能準確,在運行這個命令時系統(tǒng)應(yīng)該是空閑的。清單 4 給出在 hda 上執(zhí)行速度測試的結(jié)果。

  清單4. 在 /dev/hd 上執(zhí)行的速度測試
                
# hdparm -t /dev/hda

/dev/hda:
Timing buffered disk reads:  182 MB in  3.02 seconds =  60.31 MB/sec

  這一測試說明,在這個磁盤上讀取數(shù)據(jù)的速度是大約每秒 60 MB。

  在嘗試一些磁盤調(diào)優(yōu)選項之前,必須注意一個問題。錯誤的設(shè)置可能損害文件系統(tǒng)。有時候會出現(xiàn)一個警告,指出這個選項與硬件不兼容;但是,有時候沒有警告消息。因此,在將系統(tǒng)投入生產(chǎn)之前,必須對設(shè)置進行徹底的測試。在所有服務(wù)器上都采用標準的硬件也會有所幫助。

  表 2 列出比較常用的一些選項。

表 2. hdparm 的常用選項
選項       描述
-vi    向磁盤查詢它支持的設(shè)置以及它正在使用的設(shè)置。
-c     查詢/啟用 (E)IDE 32 位 I/O 支持。hdparm -c 1 /dev/hda 啟用這個設(shè)置。
-m     查詢/設(shè)置每中斷多扇區(qū)模式。如果設(shè)置大于零,設(shè)置值就是每個中斷可以傳輸?shù)淖畲笊葏^(qū)數(shù)量。
-d1-X   啟用直接內(nèi)存訪問(DMA)傳輸并設(shè)置 IDE 傳輸模式。hdparm 手冊頁詳細說明了在 -X 后面可以設(shè)置的數(shù)字。只有     在-vi說明目前并未使用最快速的模式的情況下,才需要進行這個設(shè)置。

  不幸的是,對于 Fiber Channel and Small Computer Systems Interface(SCSI)系統(tǒng),調(diào)優(yōu)依賴于具體的驅(qū)動器。

  必須將有幫助的設(shè)置添加到啟動腳本中,比如 rc.local。
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
LINUX磁盤管理
Linux fstab自動掛載分區(qū)教程
linux基本介紹與環(huán)境搭建
查看 Linux 中文件打開情況(lsof)
LAMP 系統(tǒng)性能調(diào)優(yōu),第 1 部分: 理解 LAMP 架構(gòu)
開機啟動掛載設(shè)置/etc/fstab
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服