Sử dụng bộ nhớ vật lý WordPress

Chúng tôi được lưu trữ tại dịch vụ lưu trữ bán chuyên dụng Squidix và đó là pretty reliable. Chúng tôi chưa bao giờ gặp phải bất kỳ vấn đề nào với họ. Nhưng gần đây, chúng tôi nhận thấy mức sử dụng CPU và Bộ nhớ cao hơn trên máy chủ của chúng tôi

Có thể có multiple reasons để sử dụng CPU và Bộ nhớ cao hơn

  1. Crunchify là một trang web trưởng thành và bắt đầu nhận được lưu lượng truy cập rất cao
  2. Một vài bản cập nhật plugin gần đây
  3. Nâng cấp chủ đề gần đây và sửa đổi tùy chỉnh bao gồm Loại bài đăng tùy chỉnh và hơn thế nữa
  4. có thể là cái khác…

Bắt đầu nào -

Điểm kiểm tra-1. Sử dụng bộ nhớ và CPU

Đây là một định nghĩa vấn đề. Tại sao lại sử dụng nhiều Bộ nhớ và CPU như vậy?

Sử dụng bộ nhớ vật lý WordPress

Điểm kiểm tra-2. Quy trình nhập cảnh

Sau khi chúng tôi xem xét số liệu thống kê cPanel của mình, chúng tôi nhận thấy số lượng quy trình gia nhập cao như nhau

Nghiêm trọng?? . Không có cách nào bạn có thể sống sót với dịch vụ lưu trữ Bluehost hoặc Hostgator trong trường hợp này

Điểm ở đây là ==> ~228 quy trình nhập cảnh là


 RewriteEngine On
 RewriteCond %{QUERY_STRING} !=""
 RewriteCond %{QUERY_STRING} !^s=.*
 RewriteCond %{QUERY_STRING} !^q=.*
 RewriteCond %{QUERY_STRING} !^url=.*
 RewriteCond %{QUERY_STRING} !^ver=.*
 RewriteCond %{REQUEST_URI} !^/wp-admin.*
 RewriteRule ^(.*)$ /$1? [R=301,L]
0

Số liệu thống kê thanh toán (trước)

Sử dụng bộ nhớ vật lý WordPress

Để khắc phục mức sử dụng CPU, Bộ nhớ và Quá trình nhập WordPress cao hơn này, chúng tôi đã bắt đầu xem xét tất cả các khả năng

Bước phòng ngừa-1

Đầu tiên, chúng tôi loại bỏ nguyên nhân của


 RewriteEngine On
 RewriteCond %{QUERY_STRING} !=""
 RewriteCond %{QUERY_STRING} !^s=.*
 RewriteCond %{QUERY_STRING} !^q=.*
 RewriteCond %{QUERY_STRING} !^url=.*
 RewriteCond %{QUERY_STRING} !^ver=.*
 RewriteCond %{REQUEST_URI} !^/wp-admin.*
 RewriteRule ^(.*)$ /$1? [R=301,L]
1 vì chúng tôi sử dụng plugin WP Super Cache WordPress và plugin này xử lý tình huống này rất tốt. Trên thực tế – tải trang

 RewriteEngine On
 RewriteCond %{QUERY_STRING} !=""
 RewriteCond %{QUERY_STRING} !^s=.*
 RewriteCond %{QUERY_STRING} !^q=.*
 RewriteCond %{QUERY_STRING} !^url=.*
 RewriteCond %{QUERY_STRING} !^ver=.*
 RewriteCond %{REQUEST_URI} !^/wp-admin.*
 RewriteRule ^(.*)$ /$1? [R=301,L]
2

Sử dụng bộ nhớ vật lý WordPress

Với


 RewriteEngine On
 RewriteCond %{QUERY_STRING} !=""
 RewriteCond %{QUERY_STRING} !^s=.*
 RewriteCond %{QUERY_STRING} !^q=.*
 RewriteCond %{QUERY_STRING} !^url=.*
 RewriteCond %{QUERY_STRING} !^ver=.*
 RewriteCond %{REQUEST_URI} !^/wp-admin.*
 RewriteRule ^(.*)$ /$1? [R=301,L]
3, chúng tôi không thấy bất kỳ sự suy giảm nào về chỉ số tải trang web. Tiếp tục nào

Phòng ngừa Bước 2

Có bản cập nhật nào gần đây cho


 RewriteEngine On
 RewriteCond %{QUERY_STRING} !=""
 RewriteCond %{QUERY_STRING} !^s=.*
 RewriteCond %{QUERY_STRING} !^q=.*
 RewriteCond %{QUERY_STRING} !^url=.*
 RewriteCond %{QUERY_STRING} !^ver=.*
 RewriteCond %{REQUEST_URI} !^/wp-admin.*
 RewriteRule ^(.*)$ /$1? [R=301,L]
4 và

 RewriteEngine On
 RewriteCond %{QUERY_STRING} !=""
 RewriteCond %{QUERY_STRING} !^s=.*
 RewriteCond %{QUERY_STRING} !^q=.*
 RewriteCond %{QUERY_STRING} !^url=.*
 RewriteCond %{QUERY_STRING} !^ver=.*
 RewriteCond %{REQUEST_URI} !^/wp-admin.*
 RewriteRule ^(.*)$ /$1? [R=301,L]
5 không?

Hmm… những cập nhật đó là từ cộng tác viên WordPress rất đáng tin cậy và sau khi dành một khoảng thời gian đáng kể, chúng tôi cũng loại trừ khả năng này. Chúng tôi có cài đặt WordPress cục bộ bằng MAMP và sau


 RewriteEngine On
 RewriteCond %{QUERY_STRING} !=""
 RewriteCond %{QUERY_STRING} !^s=.*
 RewriteCond %{QUERY_STRING} !^q=.*
 RewriteCond %{QUERY_STRING} !^url=.*
 RewriteCond %{QUERY_STRING} !^ver=.*
 RewriteCond %{REQUEST_URI} !^/wp-admin.*
 RewriteRule ^(.*)$ /$1? [R=301,L]
6 và

 RewriteEngine On
 RewriteCond %{QUERY_STRING} !=""
 RewriteCond %{QUERY_STRING} !^s=.*
 RewriteCond %{QUERY_STRING} !^q=.*
 RewriteCond %{QUERY_STRING} !^url=.*
 RewriteCond %{QUERY_STRING} !^ver=.*
 RewriteCond %{REQUEST_URI} !^/wp-admin.*
 RewriteRule ^(.*)$ /$1? [R=301,L]
7 các plugin đó, chúng tôi không nhận thấy bất kỳ vấn đề nào về thời gian tải trang hoặc vấn đề CPU cao hơn

Phòng ngừa Bước-3

Bây giờ tôi chỉ còn lại với


 RewriteEngine On
 RewriteCond %{QUERY_STRING} !=""
 RewriteCond %{QUERY_STRING} !^s=.*
 RewriteCond %{QUERY_STRING} !^q=.*
 RewriteCond %{QUERY_STRING} !^url=.*
 RewriteCond %{QUERY_STRING} !^ver=.*
 RewriteCond %{REQUEST_URI} !^/wp-admin.*
 RewriteRule ^(.*)$ /$1? [R=301,L]
8 của mình về plugin

 RewriteEngine On
 RewriteCond %{QUERY_STRING} !=""
 RewriteCond %{QUERY_STRING} !^s=.*
 RewriteCond %{QUERY_STRING} !^q=.*
 RewriteCond %{QUERY_STRING} !^url=.*
 RewriteCond %{QUERY_STRING} !^ver=.*
 RewriteCond %{REQUEST_URI} !^/wp-admin.*
 RewriteRule ^(.*)$ /$1? [R=301,L]
9. Tôi đã tra cứu trên Google và tìm thấy một số chủ đề rất thú vị về pretty reliable0 và 

 RewriteEngine On
 RewriteCond %{QUERY_STRING} !=""
 RewriteCond %{QUERY_STRING} !^s=.*
 RewriteCond %{QUERY_STRING} !^q=.*
 RewriteCond %{QUERY_STRING} !^url=.*
 RewriteCond %{QUERY_STRING} !^ver=.*
 RewriteCond %{REQUEST_URI} !^/wp-admin.*
 RewriteRule ^(.*)$ /$1? [R=301,L]
9

Sử dụng bộ nhớ vật lý WordPress

Trên Crunchify, chúng tôi có pretty reliable2

Bây giờ hãy nghĩ về kịch bản này

Khi bạn có lưu lượng truy cập bình thường như ~2000 người dùng đang hoạt động tại một thời điểm thì công việc đồng bộ hóa của Disqus cũng thực thi ~2000 lần tại một thời điểm nhất định và đó là pretty reliable3

pretty reliable4. Và cuối cùng chúng tôi đã tìm ra vấn đề thực sự

Sử dụng bộ nhớ vật lý WordPress

Làm cách nào để khắc phục sự cố sử dụng CPU cao của Disqus do Công việc đồng bộ hóa dsq_sync_forum gây ra?

Giải pháp-1

Bước 1

  1. Chuyển đến pretty reliable5 -> pretty reliable6
  2. Chọn Plugin pretty reliable7 từ hộp tổ hợp
  3. Tìm kiếm dòng 514 pretty reliable8
  4. Thay thế nó bằng khối mã này và tệp pretty reliable9
$next_scheduled = wp_next_scheduled('dsq_sync_forum');
if($next_scheduled) {
    // do nothing
} else {
    // It's time to sync now
    wp_schedule_single_event($ts, 'dsq_sync_forum');
}

Bước 2

  1. Chuyển đến multiple reasons0 ->
    
     RewriteEngine On
     RewriteCond %{QUERY_STRING} !=""
     RewriteCond %{QUERY_STRING} !^s=.*
     RewriteCond %{QUERY_STRING} !^q=.*
     RewriteCond %{QUERY_STRING} !^url=.*
     RewriteCond %{QUERY_STRING} !^ver=.*
     RewriteCond %{REQUEST_URI} !^/wp-admin.*
     RewriteRule ^(.*)$ /$1? [R=301,L]
    
    9
  2. Nhấp vào multiple reasons2
  3. Bỏ chọn hộp cho multiple reasons3
  4. multiple reasons4 thay đổi

Sử dụng bộ nhớ vật lý WordPress

Vì vậy, Làm thế nào để đồng bộ hóa bình luận bây giờ?

Bây giờ, sau này, bất cứ khi nào bạn muốn đồng bộ hóa bình luận Disqus với Cơ sở dữ liệu WordPress, chỉ cần chọn hộp ở trên và lưu cài đặt. Tất cả các nhận xét sẽ được nhập vào Cơ sở dữ liệu của bạn trong vòng 10 phút

Giải pháp-2. Cách vô hiệu hóa wp-cron. php qua. thủ thuật htaccess?

  1. Chỉ tải Disqus trên multiple reasons5 – Điều đó có nghĩa là người dùng phải nhấp vào multiple reasons6 để tải nhận xét. Nhưng có một số multiple reasons7
    1. Nếu khách truy cập nhìn thấy nhận xét phù hợp với họ, họ có nhiều khả năng sẽ đọc chúng hơn
    2. Đóng góp trong phần nhận xét cũng có nhiều khả năng hơn nếu phần nhận xét được xem theo mặc định
  2. Chặn đồng bộ hóa Disqus trên mỗi lần tải trang bằng cách thêm quy tắc multiple reasons8
    • Tôi đã thử phương pháp này và nó cũng hoạt động

Để đạt được multiple reasons9 ở trên, tôi đã thêm bên dưới ~50% CPU usage0 vào tệp multiple reasons8


 RewriteEngine On
 RewriteCond %{QUERY_STRING} !=""
 RewriteCond %{QUERY_STRING} !^s=.*
 RewriteCond %{QUERY_STRING} !^q=.*
 RewriteCond %{QUERY_STRING} !^url=.*
 RewriteCond %{QUERY_STRING} !^ver=.*
 RewriteCond %{REQUEST_URI} !^/wp-admin.*
 RewriteRule ^(.*)$ /$1? [R=301,L]

Về cơ bản mã trên sẽ chặn tất cả ~50% CPU usage2 🙂

~50% CPU usage3 gần đây chúng tôi đã thêm ~50% CPU usage4 cần thiết cho tất cả chức năng Nhúng của WordPress và ~50% CPU usage5 cần thiết để tải ~50% CPU usage6 hoặc các tệp khác có số phiên bản làm tham số

Hãy hiểu khối này

  • Bỏ qua tất cả chuỗi truy vấn trong URL và chuyển hướng đến URL blog của bạn
  • Nếu chuỗi truy vấn chứa ~50% CPU usage7 và ~50% CPU usage8 thì chỉ cho phép. Vật mẫu
    • https. // giòn. com/search/?q=wp%20super%20cache
    • https. // giòn. com/?s=wordpress
  • Bỏ qua quy tắc này nếu URL chứa ~50% CPU usage9

Sau khi kích hoạt quy tắc trên, tôi đã thấy ~4GB Memory usage0 về mức sử dụng Bộ nhớ và CPU và ~4GB Memory usage1. Ngoài ra – ~4GB Memory usage2 gần đạt tới ~4GB Memory usage3. Điều đó có nghĩa là khách truy cập được phục vụ trang được lưu trong bộ nhớ cache hầu như mọi lúc

Bài đăng này cũng sẽ giúp ích cho bạn nếu bạn gặp sự cố bên dưới và đó là một phần của mẹo tối ưu hóa WordPress

  • Sử dụng CPU cao của WordPress?
  • Sử dụng bộ nhớ cao của WordPress?
  • sửa lỗi wordpress sử dụng cpu cao
  • wordpress sử dụng tài nguyên quá mức
  • vấn đề sử dụng cpu wordpress
  • Khắc phục sự cố CPU cao dsq_sync_forum
  • sử dụng cpu plugin wordpress
  • giảm sử dụng cpu wp
  • Cách theo dõi và giảm mức sử dụng bộ nhớ WordPress
  • vượt quá mức sử dụng bộ nhớ wordpress
  • tối ưu hóa sử dụng bộ nhớ wordpress
  • wordpress disqus plugin sử dụng bộ nhớ

Kiểm tra sự khác biệt (Sau)

Sử dụng bộ nhớ vật lý WordPress

~4GB Memory usage4 Vào ngày 15 tháng 7 năm 2017, chúng tôi đã chuyển sang hệ thống bình luận mặc định của WordPress. Nhận một số ý tưởng tại sao trên bài đăng đó 🙂


Tham gia thảo luận

Nếu bạn thích bài viết này, xin vui lòng chia sẻ nó trên phương tiện truyền thông xã hội. Vẫn còn bất kỳ câu hỏi về một bài viết, để lại cho chúng tôi một bình luận

Trang web WordPress sử dụng bao nhiêu bộ nhớ?

WordPress có giới hạn bộ nhớ 32 MB theo mặc định nhưng một số nhà cung cấp dịch vụ lưu trữ tăng giới hạn này lên 64 MB cho tất cả khách hàng . Nó cũng có thể lớn hơn nữa — lên đến 256MB.

Bao nhiêu bộ nhớ vật lý của tôi nên được sử dụng?

Việc sử dụng 30 - 38% RAM của bạn là bình thường. Trên nhiều máy tính ở mức trung bình.

Sử dụng bộ nhớ vật lý trong cPanel là gì?

Trong cPanel, Mức sử dụng bộ nhớ vật lý có nghĩa là nó hiển thị dung lượng bộ nhớ (tính bằng Megabyte) hoặc RAM được phân bổ cho tài khoản lưu trữ của bạn . Vì vậy, mọi quy trình, ứng dụng hoặc tập lệnh chạy trên trang web của bạn đều sử dụng một lượng bộ nhớ vật lý cụ thể.

Tại sao mức sử dụng bộ nhớ vật lý quá cao?

Tất cả bộ nhớ máy tính được kết nối với CPU và RAM. Tuy nhiên, vấn đề sử dụng bộ nhớ cao chủ yếu là do quá nhiều quy trình nội bộ . Do đó, nó giúp dừng các chương trình và ứng dụng không cần thiết đang chạy. Mở Trình quản lý tác vụ và kiểm tra mọi chương trình bổ sung mà bạn không sử dụng.