针对Web服务器总体优化

本文提供了一套全面的服务器性能优化方案,包括文件系统的noatime设置、TCP/IP参数调整、虚拟内存配置、I/O调度器选择、内核参数修改及Apache配置等,旨在提升服务器的数据吞吐能力和并发处理能力。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、文件系统
在fstab里加入noatime,如
#cat/etc/fstab
/dev/sda1/homeext3noatime,defaults12
reboot或者重新mount生效
二、Tcp优化
在/etc/sysctl.conf里加入
net.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_recv=3
net.ipv4.tcp_syncookies=1 #启用syncookies
net.ipv4.tcp_max_syn_backlog=8192 #定义backlog队列容纳的最大半连接数
net.ipv4.tcp_fin_timeout=30
net.ipv4.tcp_keepalive_time=1800
net.ipv4.tcp_window_scaling=0
net.ipv4.tcp_sack=0
net.ipv4.tcp_timestamps=0
[color=blue]老实说,对于sysctl.conf究竟能不能用起来还真不知道,因为我是没用起来,虽然内核里面是支持的==b[/color]
三、虚拟内存优化
/etc/sysctl.conf
vm.lower_zone_protection=100
四、I/O调度器
在grub.conf的相应启动选项里加入elevator=deadline,如:
kernel/vmlinuz-2.6.6roroot=/dev/sda6elevator=deadline
这里用了Deadline的I/O调度器,它比系统默认的AnticipatoryI/O调度器更为小巧,在数据吞吐量非常大的数据库系统中表现得更有优势。
五、内核源代码参数修改
修改/usr/src/linux/include/linux/posix_types.h
#define__FD_SETSIZE1024?nbsp;65536
设置fd_set支持的最大数量
修改/usr/src/linux/include/linux/fs.h
#defineINR_OPEN1024?nbsp;65536
#defineNR_FILE8192?nbsp;65536
#defineNR_RESERVED_FILES10?nbsp;128
设置最大打开文件数量(TCP连接数量)
修改/usr/src/linux/include/net/tcp.h
#defineTCP_TIMEWAIT_LEN(60*HZ)?nbsp;1*HZ
#defineTCP_SYNACK_RETRIES5?nbsp;3
设置在backlog队列里的半连接的重试次数,每次都会花相应的时间,本质上
也是减少重试时间
makemenuconfig中,去掉没用的选项,打开以下选项的开关:
HighMemorySupport(支持4GB以上内存)
Symmetricmulti-processingsupport(支持多CPU)
TCPsyncookiesupport(可以防DOS)
设置文件打开数等的其他方法(好处就是可以不重新编译内核)
在/etc/init.d/sshd里加入(统一加在./etc/rc.d/init.d/functions行后面)
ulimit-n65535>;/dev/null2>;&1
ulimit-u16384>;/dev/null2>;&1
重起 sshd:nohup/etc/init.d/sshdrestart&
BTW:其实limits.conf不好,因为他需要rootsu-user遗传给普通用户
如果直接远程登陆是没效果的
六、apache
1、安装:采用worker线程工作模式
./configure--prefix=/prefix
--enable-mods-shared=all
--enable-deflate
--with-mpm=worker
[color=blue]chmod+s/prefix/bin/httpd[/color]#允许普通用户也可以启动 apache
2、配置:httpd.conf
Timeout60
KeepAliveOn
MaxKeepAliveRequests150
KeepAliveTimeout5
StartServers3
MaxClients3200#支持 3200个客户端哦
ServerLimit32
MinSpareThreads50
MaxSpareThreads250
ThreadLimit200
ThreadsPerChild100
MaxRequestsPerChild0
#上面的几个参数对机器要求比较高,如果是比较差的机器,每台机 1000个连接最多了,你可能要重新设置参数,我的机器是DELL2850
UseCanonicalNameOff
HostnameLookupsOff
ServerSignatureOff
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值