FreeBSD handbook中文版 6 配置与调整(4)

2008-02-23 08:02:05来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折


阅读一个详细的变量,例如, kern.maxproc:
% sysctl kern.maxproc
kern.maxproc: 1044
设置一个特殊的变量,使用=选项:
# sysctl kern.maxfiles=5000
kern.maxfiles: 2088 -> 5000
Sysctl 变量的设置通常不是字符,数字,就是布尔类型的。一个布尔类型的树1 代表
yes,0 代表no。
6.9 调整磁盘
6.9.1 Sysctl 变量
6.9.1.1 vfs.vmiodirenable
第13 页FreeBSD 使用手册
vfs.vmiodirenable sysctl 变量默认为0(off),也可以被设置成0 或1。很多目录
是比较小,只使用一小片段(典型的:1k),甚至更少(典型的:512 bytes)。然而,当
在默认的模式下操作时,即使你有很多内存,缓存器只缓存一些固定的目录。打开这个
sysctl 可以允许缓存器使用VM 页面缓存来缓存目录。这样的优势是所有的内存都能被缓存
目录所利用。不利的是最小的用来缓存目录的核心内存要大于512 bytes(典型的是:4K)。
如果你运行有大量文件处理的服务时,我们建议把这个选项打开。这样的服务包括web 缓存、
大邮件系统和新闻系统。打开这项服务通常不会降低系统的性能,只是会浪费一点内存,但
你要仔细检查一下。
6.9.1.2 hw.ata.wc
FreeBSD 通常把IDE 写入缓存关闭掉。这可以减少写入磁盘时需要的带宽。基本上,当
写入完成后,IDE 基本上就没事了。由于IDE 写入缓存被打开,IDE 驱动器将不再按顺序把
数据写入到硬盘中。当磁盘处于比较大的负荷时,它们通常能缓冲写入的数据。不幸的是,
这样会丢失很多性能,最好还是改回默认值。你应当通过观察hw.ata.wc sysctl 变量来检
查你的系统的默认情况。如果IDE 的写入缓存被关闭,你可以在内核变量中把它改回1 就可
以把它打开。这必须在启动时从引导程序过程中进行。在内核启动之后再这样做就没有用了。
6.9.2 SoftUpdates
Tunefs 能被用来很好地调整文件系统。可以这样做:
# tunefs -n enable /filesystem
# tunefs -n disable /filesystem
一个文件系统当被挂上的时候不能使用tunefs 进行修改。在单用户模式下,在所有分
区都没有被挂上之前,起用SoftUpdates 是最佳时机。
通过使用内存缓冲器,SoftUpdates 能够极大地提高文件的性能,只要是文件创建和删
除。我们建议在你的所有文件系统上都打开SoftUpdates。你应当清楚两点:第一,
SoftUpdates 能在系统出现错误时保证系统的一致性,但在升级了物理磁盘后可能只需要几
秒钟。如果你的系统崩溃了,你可能会丢失很多的工作。第二,SoftUpdates 可以推迟文件
系统块的释放时间。如果你有一个接近满了的文件系统,对它作一个主升级,make
installworld,可能会超出运行空间,从而引起升级失败。
第14 页FreeBSD 使用手册
6.10 调整内核限制
6.10.1 文件/进程限制
6.10.1.1 kern.maxfiles
kern.maxfiles 可以根据你系统的要求加大或减小。这个变量指出了在你系统上描述的
最大数量文件。可以用dmesg 来显示文件描述符的情况。
每一个打开的文件,套接字,或fifo 使用的文件描述符,都依赖于当前运行的服务的
种类和数量。
kern.maxfile 的默认值可以在你的内核配置中通过maxusers 选项来指定。
kern.maxfiles 可以按比例地增加maxuser 的值。
6.10.2 网络限制
NMBCLUSTERS 内核配置选项指出了系统可用的网络mbufs 的数量。一个具有大量负载的
服务器如果MBUFs 比较少,就会影响FreeBSD 的性能。每一个cluster 大概需要2K 的内存,
所以1024 个cluster 就需要保留2MB 的内存给网络缓存。如果你的服务器超过一个并发连
接,那每个连接需要吃掉一个16k 的接收缓存和一个16K 的发送缓存,你需要提供32MB 的
内存给网络缓存以确保web 服务器的稳定。一个最笨的计算方法是乘以2,所以
32MBx2=64MB/2K =32768。
第15 页

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:FreeBSD handbook中文版 7 FreeBSD 的启动过程

下一篇:FreeBSD handbook中文版 4 安装应用程序:Packages 和Ports