Mô phỏng các kỹ thuật cache trên một server

Các kĩ thuật caching có thể trên WordPress để tăng tốc tối đa website của bạn

Xin chào các bạn, hiện nay có rất nhiều các kĩ thuật caching hỗ trợ một website đạt được tốc độ tối đa trên web hosting của mình, tuy nhiên chúng có từng ưu điểm và nhược điểm riêng bạn cần phải biết để sử dụng nó đúng mục đích hoặc phù hợp với nhu … Tiếp tục đọc Các kĩ thuật caching có thể trên WordPress để tăng tốc tối đa website của bạn

Xin chào các bạn, hiện nay có rất nhiều các kĩ thuật caching hỗ trợ một website đạt được tốc độ tối đa trên web hosting của mình, tuy nhiên chúng có từng ưu điểm và nhược điểm riêng bạn cần phải biết để sử dụng nó đúng mục đích hoặc phù hợp với nhu cầu của bạn !

Mô phỏng các kỹ thuật cache trên một server
Mô phỏng các kỹ thuật cache trên một server

Hiện tại chúng ta có rất nhiều các plugin cache như WP Super Cache hoặc W3 Total Cache hay WP Rocket, đều tích hợp đầy đủ các chức năng cache như dưới đây, các bạn có thể tự nghiên cứu để tăng tốc trang WordPress của mình lên mức cao nhất có thể !

HTML Caching

Là kỹ thuật cache phổ biến nhất, bởi vì nó đơn giản nhất, bất kì một plugin nào cũng hỗ trợ kỹ thuật cache này một cách hoàn hảo, đây là cách tạo ra các file tĩnh HTML trong quá trình khách hàng viếng thăm, ngay khi các phiên sau đó, core sẽ lấy các file html tĩnh trong bộ cache này phục vụ người dùng mà không chạy bất kì một chức năng nào khác nữa, điều này giúp Server giảm tải tối đa cả PHP và SQL.

Nhược điểm của kĩ thuật này là không thể lưu các file động, Session hoặc Cookie đều bị lưu nếu bạn cấu hình sai, thông thường các plugin như WP Super Cache sẽ cho phép các bạn cấu hình bỏ qua cache cho người dùng đăng nhập, hoặc thêm các trang không cần cache như giỏ hàng vào trong danh sách không lưu cache !

Nhược điểm nữa của kỹ thuật này chính là chúng làm cho ổ cứng bận rộn liên tục, ghi và đọc, không tốn CPU và RAM nhưng lại tốn công ghi vào ổ đĩa, nếu có ổ SSD thì đây lại không phải là câu chuyện lưu tâm vì tốc độ ổ đĩa SSD cao hơn nhiều lần so với HDD server !

Browser Cache

Đây là kỹ thuật cache trên chính trình duyệt của người dùng, kĩ thuật này tỏ ra ưu điểm lớn vì server không cần phải phục vụ quá nhiều mà vẫn đạt được kết quả, ví dụ như người ta bắt trình duyệt của khách hàng lưu ảnh trong vòng 1 năm, lưu file css và javascript trong vòng 1 tháng, vậy thì sau thời gian hết hạn đó trình duyệt mới tải lại các tài nguyên, giúp tăng tốc website đáng kể !

Tuy nhiên, nhược điểm của kỹ thuật này chính là cache nằm trên trình duyệt người dùng, muốn xóa cache thì một là người dùng xóa cache, hai là trang web của chúng ta thay đổi các file tĩnh này, phải đổi tên mới lưu cache mới, do vậy bạn nào chưa quen với cách này thì cứ tha hồ chỉnh sửa, xong khách nhìn tha hồ lỗi 😀

Database Caching

Đây là cách cache kết quả cơ sở dữ liệu, trong một phiên truy cập của người dùng thường có từ 70 truy vấn là thấp nhất cho tới 1000 truy vấn tới cơ sở dữ liệu, và nếu blog của bạn có cả ngàn người online cùng lúc thì quả thực là một vấn đề, Hosting của các bạn sẽ hỏi 1000 lần x số người truy cập các truy vấn tới cơ sở dữ liệu, người ta có thể cache các truy vấn này để phục vụ được nhanh hơn !

Nhu cầu cache các truy vấn lại là rất lớn bởi trong một website, database là thằng chậm chân nhất trong tất cả, vì nó còn có bảng, hàng và cột, lại còn phải tìm đúng recode mà người dùng đang cần nữa đâm ra nó thành chậm chạp !

Người ta nghĩ tới chuyện cache cả bảng, cache một hàng và cache một dữ liệu nào đó đã truy vấn lại, nếu truy vấn tiếp nó sẽ lấy luôn cái kết quả đó.

Nhược điểm là tốn RAM kinh khủng, và nó chỉ làm trên cấp server, ví dụ thằng vietdex.net của Jam chạy trên Server riêng của Jam thì nó nhanh khủng khiếp, ấy là do Jam đã cache mọi thứ trong đó có cả Database, còn trên host các bạn không áp dụng được.

Trường hợp áp dụng trên host, thì các database được lưu thành file tĩnh, việc đọc file lâu chẳng kém gì đọc table nên cache hay không cache ý nghĩa không cao.

Object Caching

Đây là kĩ thuật lưu cache dưới dạng trên bộ nhớ hoặc trên ổ đĩa các Object – đối tượng – của cơ sở dữ liệu hoặc của một file, kĩ thuật này được WordPress phát triển sẵn trong core, các bạn có thể xem thêm tại đây !

Kỹ thuật này chẳng có gì mới, khi mà Drupal còn có cơ chế Object Caching ngay từng block, và người ta đánh giá cao cache của Drupal hơn WordPress rất nhiều vì nó linh động hơn và chạy tốt hơn, nó cache từng block một.

Trong WordPress ta có thể làm việc với Object Cache như thế này:

$result = wp_cache_get( 'my_result' );
if ( false === $result ) {
	$result = $wpdb->get_results( $query );
	wp_cache_set( 'my_result', $result );
} 
// Do something with $result;

Và nó cũng chỉ hoạt động thực sự tốt khi có sự hỗ trợ của các plugin như W3 Total Cache, Memcached Object Cache, APC Object Cache …

Hiện tại blog của Jam và các blog khác đang sử dụng tất cả các kỹ thuật caching trên, nhằm đạt hiệu năng cao nhất cho con hosting ghẻ của mình !

Các bạn có thể cần phải có sự hỗ trợ của các plugin cache trên WordPress để đạt được hiệu quả như ý, gần đây thấy có thằng WP Rocket nổi lên như là một plugin tốt nhất cho WordPress về caching !

Chúc các bạn thành công !

 

TÁC GIẢ:

Tôi là Jam, thâm niên 7 năm thiết kế website và làm SEO. Hãy theo dõi blog của tôi để nhận được nhiều chia sẻ thú vị xung quanh chủ đề công nghệ.
Trang chủ / Thủ thuật Wordpress / Lập trình Wordpress / Các kĩ thuật caching có thể trên WordPress để tăng tốc tối đa website của bạn

Có 3 bình luận !

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *