本帖最後由 21andy 於 2013-12-20 19:48 編輯 7 F3 Y0 N% F, }! ]3 i0 E* }9 _
0 Q& m$ ~, F8 S既然大家這麼喜歡WP,我就分享一點我的經驗) c) {% @6 `# H
8 }9 v( Z+ \$ M7 O$ _
不說緩存了,都說爛了,緩存不是解決的辦法,緩存總是要過期的 ~$ S& G4 l( v- F- Z
其他的優化方法我不說了
" B. b. J2 z5 o1 [8 v+ A( [ E' D( l) ]) e* k% E- \
說點特別的,性能可以提升不少2 A- Q1 g0 E& h' F, H
要讓wordpress 快,用好內存
7 I; ^; g) b, e7 x$ _0 ]" r+ K% T以下二個PHP擴展,二選一: B1 k, T* I& d% b+ E @2 R( B
1. apc
' _& H+ O. m! z1 E8 U0 ^5 Z1 I$ C2. zend opcache6 z- H+ F, `0 b- }8 z& q7 h
性能我測試過,差不多,開啟它們5 e3 @ @- x& f) M
4 j" x# J. _) j3 [! @, M( K然後,把所有wp的PHP文件,全部直接放內存裡
9 t0 s4 k# ~+ C- D0 U8 r9 V8 J$ ^舉例: 你的 wordpress 目錄在 /var/www/wp
, R/ ?# @ A6 d6 G4 ^% T0 U/ q" e9 R9 p
方法如下:
1 g: ]8 H0 N1 H! L* a f$ [, q1. 複製一份 wp
* k* u. ~# a( ?cp -rf /var/www/wp /var/www/wp2
x8 S( K* e( _, w' i& d$ Y6 e, h w$ z( i9 v
2. 刪除非 php 文件
4 z( P, L$ F- l$ [+ `8 ucd /var/www/wp20 ?1 F: m# I8 m- u1 o7 d
find . -type f | grep -v ".php" | xargs rm -f 2 k( c" v$ M/ A8 X/ `& l6 |
' Z, \3 L+ {( M) W6 f8 Q: t' ?2 m
4. 放到內存裡, I( I( F( `2 m1 Z$ N a
cp -rf /var/www/wp2 /dev/shm
: S" }0 A- O4 r, z
7 k! U. A) V. I9 k9 y; T5. 可以刪除原目錄裡的所有php文件; s# |) Y; F: k, s, k% X! ^7 Z1 i% W
cd /var/www2 @. C+ r& v& {9 T# H
find . -type f | grep ".php" | xargs rm -f ) s' \9 Q7 l! ?1 B' k
5 Y" A; u U1 K$ h現在,我們已經把 wp 目錄下的所有PHP文件過濾出來直接全部放內存裡了
3 N' r( N t5 d$ n. T. ~最後一步
& W# h! \' ~7 Z* R. X$ M+ j& n0 P" B: R0 i6 Z) V# b
6. 配置 nginx$ N/ U& W4 E* `. K
location ~* \.php$ {
: G; Z5 b f/ m. @9 a3 w root /dev/shm/wp;( ], Y+ ]# M, M" g( r4 b" C
try_files $uri =404;, Y w% z" |+ J
fastcgi_pass unix:/dev/shm/php-cgi.sock;) c3 z; c W0 e- A7 U# Z
include fastcgi_params;9 o5 Y1 _! T6 L, e7 Q# w9 Q
}
: V' i- y: ?, w; ~) P1 a# _+ Q8 ]
8 e1 X' e5 K1 D: \; f. Z7. 重啟 nginx 和 php-fpm 搞定!$ C/ ?- f7 k1 G% F% x
6 C) m: O9 Y$ ?9 S3 C3 X' s' \
最新版的 wordpress 這樣分開後
1 ~+ ^8 |# g8 N1 s5 z. y! `純php文件一共 8.4MB,全放內存裡2 l/ I* i# Y$ }
其他文件 4.7MB# {8 W8 J9 s2 s8 X) R8 w
如果部暑好了以後,不要安裝插件
: E/ G( M+ w1 r, c/ |8 O. y1 j如果要安裝,需要分離放一下
+ q' N/ B2 d! ]1 N. [& X% Q
1 l3 W/ v/ v, _0 x t6 n
% \0 L9 B- C/ { \
/ }1 b( m, N# [. N/ r3 M# m7 W
1 V4 a) h/ T$ g/ P6 n a" M
9 w) l0 o6 N5 v$ [( |/ `6 Q. o6 T$ w8 M8 `' F! P
|