QQ在线服务: 风舞残阳风舞残阳 年满19岁年满19岁 小罗小罗 晴天晴天 心雨心雨 叮叮肉叮叮肉 小周小周 小童小童 小破孩小破孩 遥望当年遥望当年

用户导购指南

水货IBM笔记本电脑报价

行货IBM笔记本电脑报价

IBM服务器报价

IBM笔记本电脑配件报价

本周水货IBM笔记本电脑特价

IBM笔记本电脑驱动下载

水货IBM笔记本电脑验机流程

水货IBM笔记本电脑保修政策

IBM笔记本电脑FRU查询

IBM笔记本电脑常见问题

IBM笔记本电脑使用手册

笔记本电脑验机软件

论坛积分使用说明

水货IBM笔记本电脑异地购机流程

笔记本电脑购机经历及现场

贵宾申请入口

贵宾用户FTP入口

查看笔记本配置

水货APPLE苹果笔记本电脑报价

 
发新话题
打印

[linux教程] UNIX/LINUX系统优化

UNIX/LINUX系统优化

本技巧不仅仅可以为PHP提供加速的技巧,对于Perl和Python也有同样的效果。- g' H7 E! _& ^. v9 L6 n3 _
4 e6 E) D3 G! ~% `6 _2 k
为了得到完整的调试结果,建议你采用ApacheBench或者httperf之软件。如果你对非LAMP架构的服务器测试有兴趣的话,建议你采用微软免费软件:WebApplicationStressTool(需要NT或者2000)。/ ?& [  U9 `  D" L. ^4 b! z6 M
: ~" L5 v' A/ @8 \
检测Apache,采用topd1显示所有进程的CPU内存情况。另外,还采用apachectlstatus命令。. A3 m" v7 ?6 S$ E2 o- t. u1 Y
' {1 I& F6 o) Q. d+ Y  a
1、升级硬件的一般规则:对于PHP脚本而言,主要的瓶颈是CPU,对于静态页面而言,瓶颈是内存和网络。一台400Mhz的普通奔腾机器下载的静态页面就能让T3专线(45Mbps)饱和。1 {" z: C$ l. p& d5 A9 w( \4 i
- g0 z! u" T" {+ b. @. ?7 x
2、Apache处理PHP脚本的速度要比静态页面慢2-10倍,因此尽量采用多的静态页面,少的脚本。& r& y! Z& }2 k3 p. K5 Q; G9 w

$ X$ z. L. p+ n5 w& I3、PHP脚本如果不做缓冲,每次调用都需要编译,因此,安装一个PHP缓冲产品能提升25-100%的性能。' x5 R* n( \$ W. _& W/ b9 a1 r
, F! [. M, p' S) `
4、把基于文件的会话切换到基于共享内存的会话。编译PHP时采用--with-mm选项,在php.ini中设置setsession.save_handler=mm。这个简单的修改能让会话管理时间缩短一半。
7 D8 Q6 Y  [6 H8 f2 k$ w9 L2 e/ v8 H! W6 b% t, M) C2 d/ A$ i
5、另外一项缓冲技术是把不常修改的PHP页面采用HTML缓冲输出,这些缓冲工具可以参考这里。# Z6 ]# M% h  H& ~

* M3 k# i& E: ]# _* o6、如果你采用了Linux系统,建议升级内核到2.4,因为静态页面由内核服务。
% Y% N9 D' w* h" J
' ]5 n0 Q0 y+ A4 v3 @/ ?7、采用最新版本的Apache,并把PHP编译其中,或者采用DSO模式,不要采用CGI方式。
. s2 P6 e3 D; _% Z5 W& Z5 M5 f- N1 H: G7 d2 Z
8、采用输出缓冲(请参考ob_start),如果你的代码有很多的print和echo语句,能提速5-15%。
$ u4 K: D3 w, i& y1 T
* {) U0 o; b8 ?8 Y4 L& ?6 v9、不要在Web服务器上运行X-Windows,关掉没有必要运行的进程。3 R( J! ?( ?4 D# [; h5 B
5 d/ ]4 B0 J6 K
10、如果能够用文本就不要用图像,尽量减小图片的尺寸。" m7 X' S+ x: U" H  R2 m$ i+ N1 A

( g6 b" Q& Z' L0 m; F$ Y11、分散负载,把数据服务器放到另外的机器上去。采用另外低端的机器服务图片和HTML页面,如果所有的静态页面在另外一台服务器上处理,可以设置httpd.conf中的KeepAlives为off,来减少断开连接的时间。
; G8 y( |8 o, b1 ~3 A& b
' Z4 y) ^7 q4 L- W1 F12、采用hdparm来优化磁盘,一般能提升IDE磁盘读写性能200%,但是对SCSI硬盘也有效果。
( {$ @7 p- H7 b) j( r; m  V
0 a1 l2 o: W4 s: x, {# L5 Y13、修改httpd.conf:, p2 p) M- Q$ Q

0 A& ]" }& Q$ S4 V& k#关闭DNSlookups,PHP脚本只拿IP地址
* e, ~  u9 ~% |8 i# a( k+ p3 {
/ m) a2 H, A  _& [# RHostnameLookupsoff( a5 C) S9 Q/ s

; I' |1 d: |  _" K  g  Y9 Z3 ]- T2 Y4 H' u5 r/ [' q; Q4 g3 r' y. e
#关闭htaccess检测- B0 G3 G1 @8 V4 j0 s
/ j. W! m2 ?: V/ M& k, b2 [
%26lt;Directory/%26gt;
4 e7 J3 k( H( H$ U# P' D2 K( L& E1 E8 i4 I5 G0 g( B
AllowOverridenone( v  N8 m$ }) x. F6 U- ]% A

$ D( b  J, e! Q: @%26lt;/Directory%26gt;& b+ ^& P5 v% Z
5 z$ R: R6 X$ Q* ?2 b8 ?

* M; k) g& }7 Y& d6 u9 x, z
$ c& A' l5 P% O" @0 I0 z4 \. D; ~) a打开FollowSymLinks,关闭SymLinksIfOwnerMatch以防lstat()系统调用:% }6 a; L6 M+ r- h3 N+ F! x* o

2 `  `7 r. z, q9 }" E) V8 HOptionsFollowSymLinks
/ }1 C: P7 R# {: }3 j1 {* e, d+ n: I
#OptionsSymLinksIfOwnerMatch
- d& @8 r* |# @% Q
* B- I7 j7 S, M6 w9 B& W下面还有很多关于httpd.conf参数的调整。
0 k: X- v  b/ o% E  J2 f/ i, A; _/ E8 p6 K- }- N
14、Kurt简洁而完整的ApacheTuningTips。) ^! ~. w  W. u- t

8 l2 d4 W/ o" P3 }15、如果喜欢从修改Apache源码入手,可以安装lingerd。在页面产生和发送后,每个Apache进程都会浪费一段时光在客户连接上,Lingerd能接管这项工作,让Apache迅速服务下一个客户请求。5 T4 _  U1 u; w" ]) H" e  r

; r7 H) Y2 M5 [16、如果网络拥挤,CPU资源不够用,采用PHP的HTML压缩功能
9 w2 C7 y( v( w2 z) ]7 y+ g
6 z! d& ^* y- b& ooutput_handler=ob_gzhandler
5 K" W! p5 F( c$ t: I2 i
1 _" `& N, q+ u# rPHP4.0.4的用户请不要使用,因为存在内存泄漏问题。  @/ R$ _" _6 a( L

2 L  g, K2 d* ~5 W; `8 H17、修改httpd.conf中的SendBufferSize为你最大的页面文件的大小。加大内核的TCP/IP写缓冲大小。
3 t3 w9 m( u, F' [/ b2 k, j' o. c$ I1 Y: P  I! w' l7 w( t
18、另外一篇文章:TuningApacheWebServersforSpeed,一篇97年的很古老的文章。
$ ~( _( F6 L7 j
: f6 H% f( p$ ^, K$ m19、采用数据库的持久连接时,不要把MaxRequestsPerChild设置得太大。
5 ^. |0 N/ B+ ~4 E, d# D7 Z: W, Q6 V8 W0 |8 I6 \: Y
20、CachingTutorialforWebAuthorsandWebmasters教你怎样实现浏览器缓冲。
" K1 Z9 n, h& t0 C( `: x( e* Y. e+ c0 T: a3 A7 S& z* Y" J
21、如果你足够勇敢的话,还可以采用SiliconGraphics的AcceleratedApache补丁。这个工程能使Apache1.3快10倍,使Apache2.0快4倍。) x9 s6 z  Y% Z' P  v
) L" G) Q- c2 w$ G- O  W
22、来自ProfessionalApache的技巧。
+ p. T3 m: ?8 Y' b
5 I4 {  Z# L1 t* s3 _- S23、官方的PerformanceTuning文档,很好的资料,但是十分繁琐。
  V7 N: A6 T. ]. X3 U
# ~- {$ A8 X3 V24、编译PHP时,建议采用如下的参数:
; O5 S# G! t6 L. c5 E3 ?, V7 S: R/ c4 B# _
--enable-inline-optimization--disable-debug: e4 d2 O' h7 B* ^% D
$ y8 d' j9 |  I5 y: ^2 A
25、优化Linux,moreLinux以及Solaris6 `" {# H  o% [/ [

& k( V7 H# x) R4 ?# V+ ^$ `* _  n. I26、以上所有的方法都是针对单机而言的,如果你觉得系统还是不够快,可以采用集群,负载均衡,缓冲技术。采用Squid作为缓冲,配置Squid的方法。' L  o, V; W1 a, |+ [) u8 R9 b

+ T0 E! g$ p0 u$ G; U. _. T) [7 ]  h# g0 H7 b4 Q/ n, w
" p/ J& R) G1 m
相关文档:. j2 k4 `- a4 H' w: u6 r% z0 T: m
PHP的优化,缓冲,压缩
; J/ o0 @% W2 `! o. O, E" @) C; g% z$ c" Y
为加速PHP程序而努力* |$ O" P$ ]5 ]0 W4 f
# N* \3 u# J! i. v! v& M
采用PEAR来缓冲PHP程序之一5 k: s0 b4 r# i1 d! Z/ K6 l" F
; ?/ o/ m" V3 o7 D% f" P
采用PEAR来缓冲PHP程序之二" g6 ]' ^" w: M

9 W) k3 C1 L* t4 l: v' \5 A+ D7 e& X更加安全的PHP4.1.0发布
(※本文搜集自:重庆未来科技 http://www.wlkj.net 重庆IBM笔记本电脑、重庆IBM水货笔记本电脑、重庆苹果笔记本电脑、重庆IBM服务器专卖)

TOP

发新话题