⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 00000001.htm

📁 一份很好的linux入门资料
💻 HTM
字号:
<HTML><HEAD>  <TITLE>BBS水木清华站∶精华区</TITLE></HEAD><BODY><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER>发信人:&nbsp;althea&nbsp;(痛并快乐着),&nbsp;信区:&nbsp;Linux&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>标&nbsp;&nbsp;题:&nbsp;[转载]&nbsp;Web&nbsp;Server&nbsp;Tuning&nbsp;<BR>发信站:&nbsp;BBS&nbsp;水木清华站&nbsp;(Tue&nbsp;Nov&nbsp;&nbsp;9&nbsp;02:32:02&nbsp;1999)&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Web&nbsp;Server&nbsp;Tuning&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;Servers&nbsp;<BR>&nbsp;<BR>&nbsp;Apache&nbsp;<BR>&nbsp;<BR>&nbsp;Homepage:&nbsp;apache.org&nbsp;<BR>&nbsp;Tuning:&nbsp;the&nbsp;Apache&nbsp;performance&nbsp;tuning&nbsp;guide&nbsp;by&nbsp;Dean&nbsp;Gaudet&nbsp;<BR>&nbsp;<BR>&nbsp;{Min,Max}SpareServers,&nbsp;MaxClients&nbsp;<BR>&nbsp;<BR>&nbsp;As&nbsp;you&nbsp;may&nbsp;know,&nbsp;Apache&nbsp;uses&nbsp;a&nbsp;separate&nbsp;process&nbsp;for&nbsp;every&nbsp;<BR>&nbsp;concurrent&nbsp;connection&nbsp;and&nbsp;each&nbsp;of&nbsp;those&nbsp;processes&nbsp;is&nbsp;reused&nbsp;<BR>&nbsp;for&nbsp;a&nbsp;(large)&nbsp;number&nbsp;of&nbsp;connections&nbsp;before&nbsp;a&nbsp;new&nbsp;one&nbsp;is&nbsp;<BR>&nbsp;forked.&nbsp;This&nbsp;causes&nbsp;the&nbsp;interesting&nbsp;phenomenon&nbsp;that&nbsp;Apache&nbsp;<BR>&nbsp;can&nbsp;use&nbsp;a&nbsp;lot&nbsp;of&nbsp;memory&nbsp;during&nbsp;peak&nbsp;loads&nbsp;and&nbsp;shrink&nbsp;again&nbsp;<BR>&nbsp;during&nbsp;quiet&nbsp;periods.&nbsp;&nbsp;<BR>&nbsp;<BR>&nbsp;You&nbsp;have&nbsp;to&nbsp;make&nbsp;sure&nbsp;that&nbsp;there&nbsp;are&nbsp;more&nbsp;Apache&nbsp;processes&nbsp;<BR>&nbsp;than&nbsp;simultaneous&nbsp;users,&nbsp;otherwise&nbsp;people&nbsp;will&nbsp;have&nbsp;to&nbsp;wait&nbsp;a&nbsp;<BR>&nbsp;bit&nbsp;or&nbsp;they&nbsp;can't&nbsp;get&nbsp;a&nbsp;connection&nbsp;to&nbsp;the&nbsp;server&nbsp;at&nbsp;all.&nbsp;<BR>&nbsp;Note,&nbsp;however,&nbsp;that&nbsp;it&nbsp;doesn't&nbsp;make&nbsp;sense&nbsp;to&nbsp;set&nbsp;MaxClients&nbsp;<BR>&nbsp;higher&nbsp;than&nbsp;your&nbsp;machine&nbsp;can&nbsp;properly&nbsp;support,&nbsp;otherwise&nbsp;your&nbsp;<BR>&nbsp;whole&nbsp;machine&nbsp;will&nbsp;go&nbsp;down&nbsp;the&nbsp;drain&nbsp;and&nbsp;nobody&nbsp;will&nbsp;get&nbsp;<BR>&nbsp;decent&nbsp;performance...&nbsp;If&nbsp;you&nbsp;increase&nbsp;it&nbsp;above&nbsp;256,&nbsp;you'll&nbsp;<BR>&nbsp;have&nbsp;to&nbsp;increase&nbsp;the&nbsp;HARD_SERVER_LIMIT&nbsp;in&nbsp;include/httpd.h&nbsp;or&nbsp;<BR>&nbsp;add&nbsp;-DHARD_SERVER_LIMIT=xxx&nbsp;to&nbsp;CFLAGS&nbsp;in&nbsp;Configuration.&nbsp;<BR>&nbsp;You'll&nbsp;also&nbsp;want&nbsp;to&nbsp;add&nbsp;gobs&nbsp;of&nbsp;memory&nbsp;to&nbsp;your&nbsp;box&nbsp;and&nbsp;make&nbsp;<BR>&nbsp;sure&nbsp;that&nbsp;you&nbsp;actually&nbsp;have&nbsp;enough&nbsp;network&nbsp;bandwidth&nbsp;to&nbsp;serve&nbsp;<BR>&nbsp;all&nbsp;those&nbsp;users,&nbsp;but&nbsp;that's&nbsp;another&nbsp;story&nbsp;:)&nbsp;Very&nbsp;very&nbsp;very&nbsp;<BR>&nbsp;high&nbsp;performance&nbsp;people&nbsp;probably&nbsp;want&nbsp;to&nbsp;take&nbsp;a&nbsp;look&nbsp;at&nbsp;Dan&nbsp;<BR>&nbsp;Kegel's&nbsp;C10K&nbsp;page.&nbsp;&nbsp;<BR>&nbsp;<BR>&nbsp;The&nbsp;{Min,Max}SpareServers&nbsp;settings&nbsp;are&nbsp;a&nbsp;whole&nbsp;other&nbsp;story.&nbsp;<BR>&nbsp;When&nbsp;your&nbsp;machine&nbsp;is&nbsp;only&nbsp;a&nbsp;webserver&nbsp;and&nbsp;it&nbsp;gets&nbsp;a&nbsp;lot&nbsp;of&nbsp;<BR>&nbsp;hits,&nbsp;you&nbsp;might&nbsp;want&nbsp;to&nbsp;leave&nbsp;around&nbsp;a&nbsp;decent&nbsp;number&nbsp;of&nbsp;extra&nbsp;<BR>&nbsp;servers&nbsp;so&nbsp;there'll&nbsp;be&nbsp;a&nbsp;server&nbsp;ready&nbsp;whenever&nbsp;somebody&nbsp;makes&nbsp;<BR>&nbsp;a&nbsp;request.&nbsp;Reasonable&nbsp;figures&nbsp;for&nbsp;a&nbsp;highly&nbsp;loaded&nbsp;machine&nbsp;<BR>&nbsp;would&nbsp;be&nbsp;3&nbsp;to&nbsp;8&nbsp;minimum&nbsp;and&nbsp;5&nbsp;to&nbsp;15&nbsp;maximum.&nbsp;If&nbsp;you&nbsp;need&nbsp;more&nbsp;<BR>&nbsp;than&nbsp;that,&nbsp;you're&nbsp;probably&nbsp;already&nbsp;aware&nbsp;of&nbsp;it&nbsp;:)&nbsp;&nbsp;<BR>&nbsp;<BR>&nbsp;When&nbsp;your&nbsp;machine&nbsp;is&nbsp;also&nbsp;doing&nbsp;a&nbsp;lot&nbsp;of&nbsp;other&nbsp;things&nbsp;and&nbsp;you&nbsp;<BR>&nbsp;get&nbsp;less&nbsp;than&nbsp;100.000&nbsp;hits&nbsp;a&nbsp;day,&nbsp;then&nbsp;you&nbsp;probably&nbsp;want&nbsp;to&nbsp;<BR>&nbsp;have&nbsp;only&nbsp;1&nbsp;(one)&nbsp;MinSpareServers&nbsp;and&nbsp;2&nbsp;or&nbsp;3&nbsp;MaxSpareServers.&nbsp;<BR>&nbsp;This&nbsp;means&nbsp;that&nbsp;Apache&nbsp;will&nbsp;leave&nbsp;more&nbsp;memory&nbsp;for&nbsp;other&nbsp;<BR>&nbsp;programs&nbsp;and&nbsp;disk&nbsp;cache,&nbsp;leading&nbsp;to&nbsp;better&nbsp;overall&nbsp;system&nbsp;<BR>&nbsp;performance.&nbsp;&nbsp;<BR>&nbsp;<BR>&nbsp;Limits&nbsp;<BR>&nbsp;<BR>&nbsp;MaxRequestsPerChild&nbsp;should&nbsp;be&nbsp;set&nbsp;high,&nbsp;to&nbsp;something&nbsp;like&nbsp;<BR>&nbsp;10000,&nbsp;unless&nbsp;you're&nbsp;running&nbsp;server-side&nbsp;modules&nbsp;which&nbsp;suffer&nbsp;<BR>&nbsp;from&nbsp;memory&nbsp;leaks.&nbsp;&nbsp;<BR>&nbsp;<BR>&nbsp;Disable&nbsp;Unused&nbsp;Modules&nbsp;<BR>&nbsp;<BR>&nbsp;If&nbsp;you&nbsp;don't&nbsp;plan&nbsp;on&nbsp;using&nbsp;dynamically&nbsp;loaded&nbsp;modules&nbsp;you&nbsp;can&nbsp;<BR>&nbsp;add&nbsp;-DDYNAMIC_MODULE_LIMIT=0&nbsp;to&nbsp;the&nbsp;CFLAGS.&nbsp;&nbsp;<BR>&nbsp;<BR>&nbsp;Turn&nbsp;Off&nbsp;Expensive&nbsp;Options&nbsp;<BR>&nbsp;<BR>&nbsp;Anywhere&nbsp;you&nbsp;have&nbsp;AllowOverride&nbsp;set&nbsp;means&nbsp;the&nbsp;server&nbsp;will&nbsp;<BR>&nbsp;check&nbsp;for&nbsp;the&nbsp;presence&nbsp;of&nbsp;a&nbsp;.htaccess&nbsp;file.&nbsp;For&nbsp;example,&nbsp;if&nbsp;<BR>&nbsp;you&nbsp;have&nbsp;AllowOverride&nbsp;set,&nbsp;and&nbsp;the&nbsp;webserver&nbsp;access&nbsp;a&nbsp;file&nbsp;<BR>&nbsp;in&nbsp;/usr/local/apache/htdocs/private-area/&nbsp;Apache&nbsp;will&nbsp;check&nbsp;<BR>&nbsp;/usr,&nbsp;/usr/local,&nbsp;/usr/local/apache,&nbsp;etc.&nbsp;So,&nbsp;don't&nbsp;use&nbsp;<BR>&nbsp;.htaccess&nbsp;files&nbsp;if&nbsp;you&nbsp;want&nbsp;high&nbsp;performance.&nbsp;You&nbsp;can&nbsp;set&nbsp;<BR>&nbsp;AuthUserFile&nbsp;(and&nbsp;associated&nbsp;Auth&nbsp;directives)&nbsp;in&nbsp;the&nbsp;<BR>&nbsp;httpd.conf&nbsp;file&nbsp;instead.&nbsp;&nbsp;<BR>&nbsp;<BR>&nbsp;HostNameLookups&nbsp;is&nbsp;off&nbsp;by&nbsp;default.&nbsp;Leave&nbsp;it&nbsp;that&nbsp;way,&nbsp;unless&nbsp;<BR>&nbsp;it's&nbsp;really&nbsp;important.&nbsp;Otherwise,&nbsp;you'll&nbsp;be&nbsp;doing&nbsp;a&nbsp;reverse&nbsp;<BR>&nbsp;lookup&nbsp;on&nbsp;every&nbsp;client.&nbsp;&nbsp;<BR>&nbsp;<BR>&nbsp;ExtendedStatus&nbsp;is&nbsp;off&nbsp;by&nbsp;default.&nbsp;Again,&nbsp;leave&nbsp;it&nbsp;that&nbsp;way,&nbsp;<BR>&nbsp;unless&nbsp;it's&nbsp;really&nbsp;important&nbsp;for&nbsp;you&nbsp;to&nbsp;have&nbsp;timing&nbsp;stats&nbsp;for&nbsp;<BR>&nbsp;your&nbsp;site.&nbsp;&nbsp;<BR>&nbsp;<BR>&nbsp;FollowSymLinks&nbsp;and&nbsp;SymLinksIfOwnerMatch&nbsp;both&nbsp;slow&nbsp;your&nbsp;system&nbsp;<BR>&nbsp;down,&nbsp;by&nbsp;causing&nbsp;the&nbsp;webserver&nbsp;to&nbsp;check&nbsp;ownership&nbsp;and&nbsp;<BR>&nbsp;filetype&nbsp;for&nbsp;each&nbsp;component&nbsp;in&nbsp;the&nbsp;path,&nbsp;so&nbsp;disable&nbsp;them.&nbsp;&nbsp;<BR>&nbsp;<BR>&nbsp;Use&nbsp;Efficient&nbsp;Server-side&nbsp;scripting&nbsp;<BR>&nbsp;<BR>&nbsp;If&nbsp;you&nbsp;do&nbsp;a&nbsp;lot&nbsp;of&nbsp;CGI,&nbsp;consider&nbsp;using&nbsp;mod_perl.&nbsp;The&nbsp;<BR>&nbsp;Apache::Registry&nbsp;module&nbsp;can&nbsp;in&nbsp;most&nbsp;cases&nbsp;speed&nbsp;up&nbsp;your&nbsp;CGI&nbsp;<BR>&nbsp;requests&nbsp;with&nbsp;no&nbsp;actual&nbsp;changes&nbsp;to&nbsp;your&nbsp;code.&nbsp;Plus,&nbsp;you&nbsp;can&nbsp;<BR>&nbsp;do&nbsp;a&nbsp;whole&nbsp;lot&nbsp;more&nbsp;with&nbsp;mod_perl&nbsp;(like&nbsp;using&nbsp;handlers&nbsp;<BR>&nbsp;instead&nbsp;of&nbsp;CGI,&nbsp;which&nbsp;can&nbsp;be&nbsp;far&nbsp;faster&nbsp;than&nbsp;CGI).&nbsp;See&nbsp;<BR>&nbsp;<A HREF="http://perl.apache.org">http://perl.apache.org</A>&nbsp;for&nbsp;more&nbsp;details.&nbsp;&nbsp;<BR>&nbsp;<BR>&nbsp;Take&nbsp;advantage&nbsp;of&nbsp;kernel&nbsp;features&nbsp;<BR>&nbsp;<BR>&nbsp;If&nbsp;you're&nbsp;running&nbsp;a&nbsp;Linux&nbsp;kernel&nbsp;that&nbsp;supports&nbsp;wake-one&nbsp;<BR>&nbsp;semantics&nbsp;for&nbsp;accept(),&nbsp;configure&nbsp;Apache&nbsp;to&nbsp;take&nbsp;advantage&nbsp;of&nbsp;<BR>&nbsp;that,&nbsp;e.g.&nbsp;&nbsp;<BR>&nbsp;<BR>&nbsp;env&nbsp;CFLAGS='-DSINGLE_LISTEN_UNSERIALIZED_ACCEPT'&nbsp;./configure&nbsp;&nbsp;<BR>&nbsp;<BR>&nbsp;See&nbsp;also&nbsp;<A HREF="http://www.kegel.com/mindcraft_redux.html#tips">http://www.kegel.com/mindcraft_redux.html#tips</A>&nbsp;and&nbsp;<BR>&nbsp;<A HREF="http://home.att.net/~jageorge/performance.html#Apache">http://home.att.net/~jageorge/performance.html#Apache</A>&nbsp;for&nbsp;<BR>&nbsp;more&nbsp;tips.&nbsp;&nbsp;<BR>&nbsp;<BR>&nbsp;OS&nbsp;Tweaks&nbsp;<BR>&nbsp;<BR>&nbsp;As&nbsp;of&nbsp;this&nbsp;writing&nbsp;(Jun&nbsp;3&nbsp;1999),&nbsp;the&nbsp;best&nbsp;kernel&nbsp;to&nbsp;run&nbsp;on&nbsp;<BR>&nbsp;Intel&nbsp;systems&nbsp;is&nbsp;2.2.9&nbsp;(plus&nbsp;the&nbsp;2.2.9_andrea3&nbsp;patch&nbsp;for&nbsp;SMP&nbsp;<BR>&nbsp;machines).&nbsp;See&nbsp;<A HREF="http://www.kegel.com/mindcraft_redux.html">http://www.kegel.com/mindcraft_redux.html</A>&nbsp;for&nbsp;<BR>&nbsp;more&nbsp;tips.&nbsp;&nbsp;<BR>&nbsp;<BR>&nbsp;Limits&nbsp;<BR>&nbsp;<BR>&nbsp;The&nbsp;2.2&nbsp;kernel&nbsp;lets&nbsp;you&nbsp;tune&nbsp;some&nbsp;limits&nbsp;at&nbsp;runtime.&nbsp;For&nbsp;<BR>&nbsp;example,&nbsp;&nbsp;<BR>&nbsp;<BR>&nbsp;echo&nbsp;32768&nbsp;&gt;&nbsp;/proc/sys/fs/file-max&nbsp;<BR>&nbsp;echo&nbsp;65536&nbsp;&gt;&nbsp;/proc/sys/fs/inode-max&nbsp;<BR>&nbsp;<BR>&nbsp;Other&nbsp;limits&nbsp;are&nbsp;harder&nbsp;to&nbsp;change.&nbsp;For&nbsp;example,&nbsp;to&nbsp;increase&nbsp;<BR>&nbsp;the&nbsp;number&nbsp;of&nbsp;tasks&nbsp;allowed,&nbsp;you&nbsp;may&nbsp;need&nbsp;to&nbsp;edit&nbsp;<BR>&nbsp;include/linux/tasks.h&nbsp;and&nbsp;rebuild&nbsp;the&nbsp;kernel.&nbsp;(One&nbsp;person&nbsp;<BR>&nbsp;recommended&nbsp;changing&nbsp;NR_TASKS&nbsp;from&nbsp;512&nbsp;to&nbsp;2048,&nbsp;and&nbsp;changing&nbsp;<BR>&nbsp;MIN_TASKS_LEFT_FOR_ROOT&nbsp;to&nbsp;24.)&nbsp;&nbsp;<BR>&nbsp;<BR>--&nbsp;<BR>※&nbsp;来源:·BBS&nbsp;水木清华站&nbsp;bbs.net.tsinghua.edu.cn·[FROM:&nbsp;162.105.179.11]&nbsp;<BR><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -