Tối ưu khả năng chịu tải cho WordPress với plugin Heartbeat Control.
Kể từ phiên bản 3.6, WordPress đã giới thiệu thêm một API mới có tên là WordPress Heartbeat API. Nó cho phép trình duyệt web giao tiếp với máy chủ khi bạn đăng nhập vào bảng quản trị WordPress. Chức năng này giúp WordPress xử lý những thứ như hiển thị thông báo cho các tác giả khác rằng bài viết đang được ai đó chỉnh sửa. Các plugin cũng có thể tận dụng tính năng Heartbeat để hiển thị thông báo theo thời gian thực.
Mặc dù đây là tính năng khá tuyệt vời, tuy nhiên nó có thể gây ra vấn đề trong một số trường hợp nhất định. Trên các trang khác nhau, Heartbeat sẽ kiểm tra theo các khoảng thời gian khác nhau. Ví dụ trên trang chỉnh sửa bài viết, nó sẽ kiểm tra mỗi 15 giây một lần, trong khi đó trên bảng điều khiển sẽ là mỗi phút một lần… Mỗi lần kiểm tra lại tạo ra một yêu cầu POST thêm vào số executions (tác vụ phải thực thi) của host và thời gian CPU đã sử dụng.
API sử dụng tệp tin /wp-admin/admin-ajax.php để thực hiện lệnh gọi AJAX. Nếu bạn nhận thấy một số lượng đáng kể các yêu cầu POST bởi tập tin đó thì có nghĩa là bạn cần giới hạn công việc của Heartbeat hoặc ngừng nó hoàn toàn.
Làm thế nào để ngừng Heartbeat hoàn toàn?
Thông thường, bạn hoàn toàn có thể tắt Heartbeat nếu bạn là người duy nhất làm việc tại bất kỳ thời điểm nào trên blog/ website của mình và bạn biết rằng không có bất kỳ chức năng quan trọng nào của plugin phụ thuộc nhiều vào nó để hoạt động bình thường.
Để vô hiệu hóa Heartbeat, hãy thêm đoạn code sau đây vào cuối file functions.php của theme hoặc child theme mà bạn đang sử dụng:
add_action( ‘init’, ‘stop_heartbeat’, 1 ); | |
function stop_heartbeat() { | |
wp_deregister_script(‘heartbeat’); | |
} |
Tối ưu Heartbeat với plugin Heartbeat Control
Nếu không muốn dừng Heartbeat hoàn toàn, bạn có thể giới hạn tần suất thực thi của API này bằng cách sử dụng một plugin có tên là Heartbeat Control.
1. Đầu tiên, như thường lệ, các bạn cần phải cài đặt và kích hoạt plugin Heartbeat Control (download).
2. Tiếp theo, truy cập vào Settings => Heartbeat Control. Tại đây, các bạn có thể dễ dàng thiết lập tần suất hoạt động của Heartbeat API thông qua mục Override heartbeat frequency.
Các bạn nên để thông số này ở mức tối đa là “60 seconds” (tức là thực thi mỗi phút 1 lần). Click vào nút Save Changes để lưu lại.
Xong! Chỉ vài thao tác đơn giản vậy thôi nhưng các bạn đã có thể tiết kiệm được kha khá tài nguyên cho host rồi đấy. Điều này đồng nghĩa với việc host của bạn sẽ có khả năng chịu tải tốt hơn, cho phép nhiều người online cùng lúc hơn. Thật tuyệt vời phải không nào? Chúc các bạn thành công!