我需要一些建議,因為我有一個具有 1GB RAM 和 1GB 突發容量的 VPS OpenVZ。我在 WordPress 上經營一個網站,我的網站使用者每天大約有 2000 名。我的資料庫大小約為 90MB,我使用的是最新的 WordPress 4.2.2。我遇到一個問題,我的網站正在消耗伺服器上的所有記憶體。我嘗試重新安裝整個伺服器,恢復後再次進入相同狀態。我分析說,在重新安裝之前,大部分內存都被 mysqld 服務消耗,關閉該服務可以冷卻內存,現在重新安裝後,apache 伺服器正在消耗內存,並且 httpd 服務無法停止。請告訴我應該做什麼來解決這個問題。我的頂級命令結果如下。
top - 14:49:04 up 24 min, 2 users, load average: 1.84, 1.89, 2.51
Tasks: 88 total, 2 running, 86 sleeping, 0 stopped, 0 zombie
Cpu(s): 28.3%us, 4.1%sy, 0.0%ni, 67.6%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 1048576k total, 1047576k used, 1000k free, 0k buffers
Swap: 1048576k total, 917004k used, 131572k free, 54892k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
3439 apache 20 0 375m 39m 3860 S 34.5 3.9 0:02.79 httpd
3663 apache 20 0 378m 42m 3816 S 20.0 4.1 0:01.22 httpd
1254 mysql 20 0 1672m 19m 2980 S 16.6 1.9 1:15.50 mysqld
3942 apache 20 0 375m 35m 3604 R 14.5 3.5 0:01.36 httpd
3930 apache 20 0 375m 36m 3788 S 11.0 3.6 0:00.91 httpd
3407 apache 20 0 369m 33m 3572 S 1.4 3.3 0:01.93 httpd
3844 apache 20 0 375m 39m 4036 S 1.4 3.9 0:00.95 httpd
3652 apache 20 0 375m 39m 4044 S 0.7 3.9 0:02.57 httpd
4144 root 20 0 15028 1016 724 R 0.7 0.1 0:00.01 top
1 root 20 0 19236 24 24 S 0.0 0.0 0:00.01 init
2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd/183
3 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khelper/183
129 root 16 -4 10644 0 0 S 0.0 0.0 0:00.00 udevd
479 root 20 0 243m 340 140 S 0.0 0.0 0:00.13 rsyslogd
498 named 20 0 308m 1188 592 S 0.0 0.1 0:00.67 named
519 root 20 0 66220 184 128 S 0.0 0.0 0:00.02 sshd
527 root 20 0 21720 4 4 S 0.0 0.0 0:00.00 xinetd
562 root 20 0 11312 280 280 S 0.0 0.0 0:00.01 mysqld_safe
692 root 20 0 19268 120 120 S 0.0 0.0 0:00.00 dovecot
694 dovecot 20 0 12988 80 80 S 0.0 0.0 0:00.00 anvil
695 root 20 0 13116 116 116 S 0.0 0.0 0:00.00 log
706 root 20 0 98388 116 116 S 0.0 0.0 0:00.14 sshd
708 root 20 0 66404 0 0 S 0.0 0.0 0:00.00 saslauthd
709 root 20 0 66404 0 0 S 0.0 0.0 0:00.00 saslauthd
785 root 20 0 80860 184 104 S 0.0 0.0 0:00.03 master
793 postfix 20 0 80940 136 76 S 0.0 0.0 0:00.00 pickup
794 postfix 20 0 81124 112 112 S 0.0 0.0 0:00.00 qmgr
796 nobody 20 0 164m 140 52 S 0.0 0.0 0:00.01 proftpd
804 root 20 0 340m 1424 208 S 0.0 0.1 0:02.91 httpd
813 root 20 0 20024 324 248 S 0.0 0.0 0:00.00 crond
825 root 20 0 21108 0 0 S 0.0 0.0 0:00.00 atd
947 root 20 0 12892 316 316 S 0.0 0.0 0:00.06 bash
2519 root 20 0 15028 556 556 S 0.0 0.1 0:00.08 top
3192 apache 20 0 369m 33m 3540 S 0.0 3.3 0:05.06 httpd
3196 apache 20 0 372m 5048 3476 S 0.0 0.5 0:01.92 httpd
3204 apache 20 0 375m 38m 3492 S 0.0 3.7 0:02.17 httpd
3392 apache 20 0 375m 37m 3464 S 0.0 3.7 0:01.02 httpd
答案1
您是否遇到任何網站效能問題? Linux 的問題是,top 顯示你所有的 RAM 都在使用上並不是一件壞事。嘗試給我們輸出free -m
.當應用程式使用完其使用的記憶體時,核心不會立即清除資料頁並將其再次標記為空閒記憶體。例如,我現在運行的桌面虛擬機器顯示我在頂部使用了 7.9G / 8.0G RAM。但是,如果我運行該 free 命令,我可以看到已使用 1.2 GB,已快取 6.7 GB。
所以我再次問,您是否注意到性能下降,或者您唯一擔心的top
是您使用了太多內存?
答案2
WordPress 使用大量 RAM 和 CPU。如果您想繼續使用 WordPress,只需升級伺服器即可。另一種方法可能是為您的伺服器使用另一個系統,或讓某人為您的網站編碼。這樣,RAM 使用率就不會那麼高——當然,如果編碼人員做好了他的工作的話。
不確定這是否有幫助,但這就是我在 WordPress 上的經驗。它使您的整個網站比自行編碼的網站慢得多。
謝謝你,
馬庫斯。