Câu trả lời ngắn thực sự là có , trong hầu hết các trường hợp.
Thứ nhất, trên hầu hết các thiết lập, sinh ra một công việc định kỳ phát sinh độ trễ 1 giây khi tải trang, bởi vì nó được thực hiện thông qua yêu cầu HTTP loopback với thời gian chờ 1 giây - xem https://wordpress.org/support/topic/save -a-full-second-on-cron-exec / .
Thứ hai, công việc được sinh ra bây giờ sẽ cạnh tranh với tải trang để truy cập cơ sở dữ liệu (cũng như các tài nguyên khác). Nhiều quy trình có thể đọc cơ sở dữ liệu đồng thời; tuy nhiên, bất cứ khi nào một quy trình được ghi vào cơ sở dữ liệu, theo mặc định, nó bị khóa để ngăn truy cập ghi hoặc đọc đồng thời bởi bất kỳ quy trình nào khác - xem /programming/1005206/does-sqlite-lock-the-database -file-on-read # answer-1005218 . Tác động của điều này phụ thuộc vào mức độ cập nhật cơ sở dữ liệu của cron phức tạp và thời gian cơ sở dữ liệu thực sự bị khóa trong bao lâu và có thể không đáng kể. Tất nhiên, nó cũng sẽ là một vấn đề nếu một công việc định kỳ tình cờ chạy khi một trang được yêu cầu, nhưng có các công việc định kỳ xuất hiện trên đảm bảo tải trang chúng sẽ ảnh hưởng đến ít nhất là tải trang đó.
Nếu máy chủ / lưu trữ của bạn cho phép, bạn nên thiết lập một công việc định kỳ theo lịch để chạy mỗi vài giờ, với lệnh
php -q /path/to/wp-cron.php
và vô hiệu hóa cron sinh sản khi tải trang với mục sau trong wp-config.php
:
define('DISABLE_WP_CRON', true);