Plugin Swift Performance Pro – Tối Ưu Toàn Diện cho WordPress

Khi sử dụng WordPress, việc áp dụng công nghệ lưu bộ nhớ đệm (cache) thường là bắt buộc để đảm bảo website hoạt động mượt mà và đáp ứng tiêu chí “tải trong 1 giây”. Thực tế cho thấy, khi áp dụng cache, thời gian tải trang có thể được rút ngắn xuống chỉ còn khoảng 300 mili-giây.

Trong việc sử dụng cache, có nhiều lựa chọn khác nhau thông qua việc sử dụng các plugin miễn phí như WP Super Cache, LiteSpeed Cache, W3 Total Cache, cũng như nhiều plugin trả phí như WP Rocket, Swift Performance Pro.

Sau một thời gian dài thử nghiệm với nhiều plugin cache khác nhau, cả miễn phí và trả phí, tôi muốn chia sẻ nhận định cá nhân và đánh giá về một plugin mà tôi cho rằng mang đầy đủ tính năng cần thiết để tối ưu tốc độ của website – đó chính là Swift Performance Pro.

LÝ DO ƯU TIÊN CHỌN SWIFT PERFORMANCE PRO?

Thường thì để tối ưu một website, bạn phải tinh chỉnh nhiều thành phần khác nhau như:

– Tạo cache cho tất cả các trang trên website.
– Tối ưu CSS và Javascript để giảm thời gian tải trên trình duyệt.
– Nén ảnh và sử dụng định dạng .webp, kích hoạt chức năng lazyload,…
– Tắt các thành phần không cần thiết trên WordPress.
– Tối ưu cơ sở dữ liệu bằng cách giảm kích thước và loại bỏ thành phần không cần thiết.

Thường thì, để làm những công việc trên, bạn phải sử dụng nhiều plugin khác nhau, đặc biệt là cho phần tối ưu hình ảnh.

Tuy nhiên, với Swift Performance, bạn có thể thực hiện tất cả những yêu cầu trên chỉ với một plugin. Tôi đã ngừng sử dụng plugin Imagify hoàn toàn và tiết kiệm được 5 đô la mỗi tháng.

Về mặt giá cả, hiện tại Swift Performance Pro có giá khởi điểm từ 39 đô la mỗi năm cho việc sử dụng trên một website, 100 đô la cho 4 website và 200 đô la cho không giới hạn số lượng website. Tổng quan, mức giá này khá hợp lý và có vẻ rẻ hơn so với nhiều plugin cache khác.

Nếu bạn muốn trải nghiệm thử, bạn có thể dùng bản miễn phí của Swift Performance Lite.

Khả năng tương thích cao

Tôi đã thử nghiệm Swift Performance Pro trên nhiều loại máy chủ web khác nhau và tôi thấy nó hoàn toàn tương thích với các máy chủ sử dụng Apache, LiteSpeed và NGINX.

Nếu bạn đang sử dụng NGINX, khi bạn cấu hình, Swift Performance Pro sẽ cung cấp các quy tắc rewrite để dễ dàng tích hợp vào máy chủ web. Thực sự, bạn chỉ cần chèn những quy tắc này vào tệp cấu hình NGINX của trang web và nó sẽ hoạt động.

Đối với các máy chủ sử dụng Apache hoặc LiteSpeed Webserver Enterprise, Swift Performance Pro sẽ tự động chèn các quy tắc rewrite vào tệp .htaccess mà không cần bất kỳ thao tác bổ sung nào.

Khả năng “tăng điểm PageSpeed

Mặc dù tôi không hoàn toàn ủng hộ việc quá tập trung vào việc đạt điểm xanh trên PageSpeed Insights, tuy nhiên sau khi kích hoạt một số tính năng mà tôi cho là cần thiết trên Swift Performance Pro, điểm PageSpeed của trang web của tôi đã được cải thiện đáng kể.

Cấu hình đa dạng & dễ dàng

Swift Performance Pro có thể được coi là khá phức tạp và yêu cầu nhiều bước cấu hình hơn. Điều này bởi vì nó cung cấp một loạt các tùy chọn cấu hình phức tạp khi bạn chuyển sang chế độ Advanced View (Xem nâng cao) để hiển thị các tùy chọn cao cấp.

Tuy vậy, nó cũng có thể được coi là dễ cấu hình bởi vì khi bạn cài đặt, bạn có thể sử dụng tính năng Use Present và Swift Performance Pro sẽ cung cấp cho bạn 5 cấu hình khác nhau tùy thuộc vào mức độ tối ưu hóa. Điều này có nghĩa là bạn có thể chọn cách tối ưu hóa theo cách dễ dàng mà không cần hiểu rõ về tất cả các tùy chọn cấu hình.

Các tính năng đặc sắc của Swift Performance Pro

Plugin này có nhiều tùy chọn để bạn tự tinh chỉnh theo ý muốn. Dưới đây là một số tính năng chính tôi sẽ nói qua cũng như giải thích chi tiết để bạn có cái nhìn rõ hơn về từng tính năng. Hãy xem xét xem liệu các tính năng có phù hợp với nhu cầu của bạn hay không.

Tôi cần lưu ý rằng một số tính năng mà tôi đề cập dưới đây có thể yêu cầu bản quyền trả phí để sử dụng, và các tính năng này có thể bị giới hạn trên phiên bản miễn phí.

Trước khi tiến hành cấu hình, bạn nên chuyển sang chế độ Advanced View vì một số tùy chọn mà tôi sẽ nêu ra dưới đây sẽ không hiển thị trong chế độ Simple View.

Warmup – Tạo cache ngầm cho website

Trong quá khứ, các plugin tạo cache thường tạo ra cache khi một trang được tải lần đầu tiên. Ví dụ, nếu một trang chưa có cache, thì lần đầu tiên người truy cập vào trang đó sẽ trải qua việc tải trang chậm hơn, vì trang phải xử lý cùng lúc việc hiển thị trang và việc tạo cache.

Với tính năng Warmup của Swift Performance Pro, cache sẽ được tạo ra tự động trước và hoạt động ngầm trên trang web (prebuild cache).

Để kích hoạt tính năng này, bạn vào Settings => Warmup và chọn Prebuild Cache Automatically, đồng thời lưu ý một số tùy chọn sau:

– Prebuild Speed: Tùy chọn tốc độ prebuild. Nếu bạn đang sử dụng host với cấu hình thấp, bạn nên chọn tốc độ thấp như Slow hoặc Reduced. Nếu host của bạn có tài nguyên CPU nhiều hơn, bạn có thể tăng tốc độ lên dần.

– Discover New Pages: Tùy chọn này sẽ tự động xác định các trang trên website. Tuy nhiên, tôi khuyến nghị tắt tính năng này nếu trang web có nhiều trang, vì điều này có thể làm chậm quá trình prebuild. Thay vào đó, bạn có thể sử dụng Warmup Table Source để thiết lập các trang cần prebuild.

– Warmup Table Source: Bạn có thể khai báo danh sách các trang trên website cần prebuild. Mặc định là Auto, tức là nó sẽ tự động quét. Hoặc bạn có thể thiết lập nó tự động lấy URL theo sitemap. Tuy nhiên, nếu bạn lựa chọn cách này, trang chủ của bạn sẽ không được cache, vì sitemap thường không chứa trang chủ. Nếu bạn sử dụng Sitemap, bạn nên tắt Optimize Prebuild Only ở phần Optimization => General để cache trang chủ được tạo dựa trên tính năng Preload.

– Các tùy chọn còn lại nên để mặc định.

Liên quan đến prebuild cache, bạn vào Optimization => General và bật hai tùy chọn sau:

– Optimize Prebuild Only: Khi bật, trang sẽ không lưu cache khi người dùng truy cập một trang chưa có cache lần đầu tiên. Điều này giúp tránh tình trạng người dùng truy cập vào trang chưa có cache sẽ gặp tình trạng tải trang chậm. Cache sẽ chỉ được tạo dựa trên tính năng Preload.

– Optimize in Background: Trang sẽ được lưu cache ngầm kể cả khi không có truy cập

Tuy vậy, điều này có thể hơi mơ hồ với tôi, vì việc liên tục tạo cache ngầm đã được thực hiện bởi tính năng Warmup. Tuy nhiên, Swift Performance khuyên bạn nên bật tính năng này.

– Limit Simultaneous Threads: Hạn chế số tiến trình được tạo ra để tạo cache. Nếu bạn sử dụng Shared Host và gặp vấn đề về CPU/RAM quá tải, bạn nên bật tính năng này và đặt trong khoảng từ 5 – 10.

Nén CSS

Tính năng này có thể không phù hợp với một số trang web. Nếu bạn bật tính năng này và gặp lỗi về giao diện, hãy tắt nó đi.

Tính năng Merge Styles của Swift Performance Pro cho phép gom tất cả các tệp .css trên trang web thành một tệp duy nhất, từ đó giảm số lượng kết nối trình duyệt cần thực hiện. Đồng thời, nó cũng tạo ra các phần CSS quan trọng (Critical CSS) để tải trước, giúp trang web hiển thị nhanh hơn.

Để kích hoạt tính năng này, bạn vào Settings => Optimization => Styles và bật các tùy chọn sau:

– Merge Styles: Bật tính năng nén CSS.

– Generate Critical CSS: Khi bật, tính năng này sẽ tự động tạo ra các phần CSS quan trọng cho từng trang khi cache được lưu.

– Print critical CSS inline: Khi bật tính năng này, CSS quan trọng sẽ được nhúng trực tiếp vào trang web thay vì được lưu trong một tệp riêng biệt. Điều này giúp trình duyệt hiển thị trang nhanh hơn, do không cần thực hiện kết nối đến một tệp CSS bổ sung.

Nén JavaScript

Tính năng này cũng có thể không phù hợp với một số trang web. Nếu bạn bật tính năng này và gặp lỗi về giao diện, hãy tắt nó đi.

Tương tự với CSS, tính năng Merge Scripts của Swift Performance Pro giúp nén tất cả các tệp JavaScript thành một tệp duy nhất, làm giảm số lượng kết nối cần thiết. Ngoài ra, nó còn hỗ trợ tải các tệp JavaScript không đồng bộ (async load), giúp trình duyệt giảm thời gian trễ khi tải JavaScript.

Để kích hoạt tính năng này, bạn vào Settings => Optimization => Scripts và bật các tùy chọn sau:

– Merge Scripts: Bật tính năng nén JavaScript.

– Async Execute: Khi bật, tệp JavaScript đã được nén sẽ được tải bất đồng bộ (tải sau khi trang web tải xong).

Tối ưu font chữ

Nếu trang web của bạn sử dụng các font chữ tùy chỉnh hoặc Google Font, tính năng tối ưu font của Swift Performance Pro sẽ rất hữu ích.

Để kích hoạt tính năng tối ưu font, bạn vào Settings => Optimization => Fonts và bật các tùy chọn sau:

– Preload Fonts Automatically: Khi bật tính năng này, tất cả các font chữ trên trang sẽ được tải tự động và được thêm thẻ rel=”preload” vào mã nhúng. Điều này giúp trình duyệt biết các tài nguyên font sẽ được tải nhanh chóng để tránh vấn đề hiển thị chữ bị vỡ khi tải chưa hoàn tất. Ngoài ra, nó còn giúp các font chữ không bị tải cùng với các tài nguyên khác trên trang. Tự động thêm as=”font” vào mã nhúng để trình duyệt biết đó là font chữ và ưu tiên xử lý cao hơn.

– Use Local Fonts: Nếu bạn sử dụng font từ ngoài như Google Font, bật tính năng này để tải font chữ về máy chủ của trang web và tăng tốc độ tải trang, đồng thời tránh tình trạng trang web bị chậm khi tải font từ nơi bên ngoài.

Tối ưu hình ảnh

Tính năng tối ưu hình ảnh của Swift Performance Pro được đánh giá là rất hiệu quả, đặc biệt là không giới hạn dung lượng nén ảnh và chuyển đổi sang định dạng .webp. Trước khi bật tính năng này, nên tắt các plugin khác liên quan đến tối ưu hình ảnh để tránh xung đột.

Để cấu hình tối ưu hình ảnh, bạn vào Settings => Images và thiết lập các tùy chọn sau:

– Optimize images on Upload: Khi bật, hình ảnh sẽ được tối ưu ngay khi được tải lên trang web.

– Images Source: Nếu bạn chỉ muốn tối ưu hình ảnh khi tải lên thư viện hình ảnh, chọn Media Library. Nếu muốn tối ưu toàn bộ thư mục wp-content (bao gồm hình ảnh trong theme/plugins), bạn có thể chọn WP-CONTENT directory.

– Image Optimizer: Chọn Lossless nếu bạn muốn giữ nguyên chất lượng hình ảnh. Nếu chọn các tùy chọn khác, hình ảnh sẽ bị giảm chi tiết tùy thuộc vào mức độ từ Slightly Lossy đến Aggressive.

– Keep Original Images: Nếu không cần giữ ảnh gốc với chất lượng cao, bạn có thể tắt tùy chọn này để tiết kiệm không gian lưu trữ.

– Generate WebP: Bật tính năng này để tạo các tệp .webp tối ưu cho trình duyệt Google Chrome khi tối ưu hình ảnh.

– Serve WebP: Khi đã tạo tệp .webp ở trên, chọn cách sử dụng Serve WebP là Use <picture> elements. Điều này cho phép tải ảnh .webp bên trong thẻ <picture>, còn ảnh định dạng gốc sẽ được tải bằng thẻ <img>. Việc này giúp các trình duyệt cũ vẫn hiển thị ảnh và trang web đẹp hơn.

– Serve WebP Background Images: Sử dụng định dạng .webp cho các ảnh nền nếu cần.

Nếu hình ảnh trên trang web chưa được tối ưu bao giờ, bạn có thể vào mục Image Optimizer và nhấn nút Optimize Image (All) để tự động tối ưu toàn bộ hình ảnh.

Prefetch DNS

Mỗi trang web thường tải nhiều tài nguyên từ bên thứ ba như mã Google Analytics, Facebook Tracking Pixel, các tính năng live chat và nhiều tài nguyên khác. Sử dụng tính năng Prefetch DNS giúp trình duyệt trước đoán các tên miền từ bên thứ ba với ưu tiên thấp và lưu cache địa chỉ IP của chúng. Điều này giúp các tải trang sau có thời gian phản hồi gần như ngay lập tức.

Điều tốt về Swift Performance Pro là nó sẽ tự động tìm và đưa vào danh sách DNS Prefetch các tên miền bên thứ ba mà không cần phải khai báo thủ công.

Để kích hoạt tính năng này, bạn vào Settings => General => Tweak và bật tùy chọn sau:

– Prefetch DNS: Bật tính năng Prefetch DNS.

– Collect domains from scripts: Mặc định, nó chỉ prefetch các tên miền của tài nguyên CSS và HTML từ bên thứ ba. Bạn bật tùy chọn này nếu muốn nó cũng prefetch DNS cho các tên miền bên thứ ba đang tải JavaScript (ví dụ như Facebook hay Google Analytics).

Một số gợi ý cấu hình Swift Performance Pro

Dưới đây là một số gợi ý cấu hình Swift Performance Pro cho các trường hợp cụ thể:

1. Đối với trang web nhẹ, chỉ có bài viết thông thường: Vào Settings => Caching => Warmup => chỉnh giá trị Warmup Table Source thành Auto.
2. Đối với trang web sử dụng WooCommerce hoặc custom post type: Vào Settings => Caching => Warmup => chỉnh giá trị Warmup Table Source thành Sitemap, sau đó nhập đường dẫn sitemap. Đồng thời, vào Settings => Optimization => General và tắt tùy chọn Optimize Prebuild Only.
3. Nếu trang web bạn ít cập nhật nội dung: Vào Settings => Caching => General và thiết lập Cache Expiry Mode là Time based mode, sau đó chỉnh Cache Expiry Time lên cao nhất là 2 ngày. Nếu bạn thường xuyên cập nhật nội dung, hãy chọn Action based mode.
4. Tất cả các tính năng khác mà đã được đề cập trong bài, nên bật hết.

Lời kết và nhược điểm

Với các tính năng nổi bật đã được trình bày, Swift Performance Pro là một plugin tối ưu hoàn chỉnh, hỗ trợ nhiều tính năng mà thường khó tìm thấy ở các plugin khác.

Tuy nhiên, có một điểm yếu của Swift Performance Pro là thời gian tạo cache lâu. Điều này có nghĩa rằng quá trình prebuild cache cũng sẽ mất thời gian lâu, đặc biệt khi bạn không sử dụng tùy chọn Optimize Prebuild Only như đã đề cập ở trên. Trong trường hợp đó, khi người truy cập vào một trang chưa có cache, thời gian tải trang sẽ kéo dài do cần xử lý và tạo cache cho trang.

Vì vậy, khi sử dụng Swift Performance Pro, bạn cần hiểu rằng mỗi khi xóa cache trên trang web, bạn sẽ phải đợi một khoảng thời gian để toàn bộ các trang trên trang web được tạo lại cache.