Có vẻ như thời điểm khi Jetpack ra mắt, Automattic tích hợp nhiều thứ quá, khiến tới giờ vẫn mang tiếng là nặng và chậm 😛
Thời điểm mình biết tới Jetpack là khoảng 2017, cài mặc định, không cần làm gì, thấy nhẹ hều trên con VPS Vultr 512MB RAM, bài tối ưu này cũng vẽ vời dành cho ai đam mê vọc vạch, chứ hiệu quả thực tế của nó không đáng kể 😀
1. Tắt các modules không dùng
Cài Jetpack Without Promotions và Module Control for Jetpack để chặn bớt các quảng cáo và tắt các modules không sử dụng
Cụ thể mình đang dùng Image CDN, Jetpack Social, Related posts thì bật lên, còn lại tắt hết
Bên trong Jetpack, phần tùy chọn sẽ sạch sẽ hơn
Về cơ bản làm như thế, đã giảm rất nhiều request thừa và các thứ linh tinh rồi, dùng cơ bản thì chỉ cần làm tới đây là đủ
Trong trường hợp bạn không muốn cài quá nhiều plugin, có thể dùng trực tiếp code bên dưới
function jeherve_only_seven_modules( $modules, $min_version, $max_version ) { // Danh sách các module mà bạn muốn giữ lại $my_modules = array( 'related-posts', // Giữ lại module Related Posts ); return array_intersect_key( $modules, array_flip( $my_modules ) ); } add_filter( 'jetpack_get_available_modules', 'jeherve_only_seven_modules', 20, 3 ); add_filter( 'jetpack_just_in_time_msgs', '__return_false', 20 ); add_filter( 'jetpack_show_promotions', '__return_false', 20 ); add_filter( 'jetpack_blaze_enabled', '__return_false' );
2. Xử lý các request không mong muốn
Tùy phiên bản khác nhau, mà có khi Jetpack bổ xung thêm các tính năng “khỉ gió” gì đó vào 1 cách rất “ẩn mình”, cụ thể ở các bản trước mình dùng không thấy gì, mà sang 12.2.1 mới nhất lại thấy có thêm jetpack-videopress-video-block-view, có thể dùng Perfmatters để chặn các request này hoàn toàn, hoặc cho nó hiện vào các trang, bài viết cụ thể
3. Tắt Autoload
Jetpack set autoload = yes trong database cực nhiều, đây là thứ mình phàn nàn nặng nhất, nhìn phần Autoload khi vừa cài Jetpack vào nó chi chít luôn
Bạn có thể dùng Advanced DB Cleaner PRO để tìm kiếm và chuyển tất các thứ có liên quan tới Jetpack về NO, cứ mạnh dạn nhé, cái gì quan trọng Jetpack tự chuyển lại về YES à 😀 trong hình là do mình set 1 lần về NO rồi, nên nó chỉ hiện có 1 ít như thế, chứ lần đầu tìm kiếm, chắc phải ra 2-3 trang Jetpack set YES ở Autoload đấy
4. Giảm thời gian chạy các cron
Có thể dùng WP Crontrol, cho phép xem và kiểm soát những gì đang xảy ra trong hệ thống wp-cron
Làm 3 bước trên rồi thì Jetpack bên trong wp-cron còn lại khá ít thứ, cụ thể như mình thì còn lại 5-6 request
Trong đó jetpack_sync_full_cron và jetpack_sync_cron là 2 thứ bắt buộc, bị set cứng 5 phút chạy 1 lần???
Các thứ khác thì có thể điều chỉnh, mỗi ngày chạy 1 lần là đủ, không cần thiết chạy quá nhiều
1 số thứ như jetpack_recommend_videopress cho phép paused thì paused luôn cho nhẹ
Trong trường hợp của mình, chỉ dùng duy nhất Related posts, mọi cron liên quan tới Jetpack đều không hề có bất cứ tác dụng gì, mạnh dạn tắt sạch luôn 😀
// Khởi tạo chặn và xóa cron jobs add_action('init', 'block_and_permanently_remove_jetpack_cron_jobs'); function block_and_permanently_remove_jetpack_cron_jobs() { // Lấy tất cả cron jobs đã lên lịch $crons = _get_cron_array(); if ($crons) { foreach ($crons as $timestamp => $cron) { foreach ($cron as $hook => $jobs) { if (strpos($hook, 'jetpack_') === 0) { // Tạm ngừng các cron jobs wp_clear_scheduled_hook($hook); // Thêm hành động chặn cho hook cron job add_action($hook, 'block_jetpack_cron_job'); } } } } } // Chặn cron job và báo lỗi nếu được gọi function block_jetpack_cron_job() { $hook = current_filter(); wp_die("Cron job $hook is blocked and cannot be executed."); }
Tổng kết
Thực tế Jetpack luôn cập nhập plugin của họ rất đều đặn và cố gắng tối ưu ngày càng tốt hơn, bạn chỉ cần làm bước 1 là đủ ổn, các bước sau chủ yếu sử lý cho sạch sẽ, nhìn đỡ rác là chính 😀 còn hiệu năng của nó, mình nghĩ chỉ cải thiện tầm 10%
Nhìn lại phiên bản Jetpack hiện tại ờ 2024 cảm giác nó cồng kềnh điên người, sử dụng thực tế nó chỉ tăng thời gian load trang thêm 0.01s nhưng database queries nó tăng khiếp luôn, gỡ Jetpack ra chỉ select tầm 50 query ở trang home, cài vào 1 phát nó hú lên …. total: 102, mà mình chỉ dùng duy nhất Related posts, và tắt hết mọi thứ khác đi rồi đấy, dùng thực tế thì mình tin chắc không ai cảm nhận được sự khác biệt giữa cài và không cài Jetpack, có điều nhìn cách nó query vào database khá là bực bội
Vẫn rất muốn tìm kiếm 1 plugin Related Posts khác 👁️ nhưng đều không thấy thèng nào chính xác và nhẹ hơn, cuối cùng vẫn phải dùng Jetpack :((
Chính sách bình luận: Chúng tôi rất trân trọng các bình luận của bạn và cảm ơn thời gian bạn dành để chia sẻ ý tưởng và phản hồi.
Ghi chú: Những bình luận được xác định là spam hoặc chỉ mang tính quảng cáo sẽ bị xóa.
• Để cải thiện trải nghiệm bình luận, chúng tôi khuyến khích bạn tạo một tài khoản Gravatar. Thêm avatar vào tài khoản Gravatar sẽ giúp bình luận của bạn dễ nhận diện hơn đối với các thành viên khác.
• ✂️ Sao chép và 📋 Dán Emoji 💪 giúp bình luận thêm sinh động và thú vị!