Friday, April 15, 2011

Tăng tốc Joomla! bằng cách tạo cache cho module

Nếu như bạn có một website đơn giản và mỗi ngày chỉ có vài trăm khách viếng thăm thì bạn không cần quan tâm tới bài viết này.

Còn nếu bạn nhận thấy website của bạn luôn nạp rất chậm khi có nhiều người truy cập thì bạn cần bật tính năng "debug" của Joomla! và quan sát xem có bao nhiêu truy vấn đã được thực thi. Trung bình từ 50 trở xuống là ổn. Còn trong trường hợp có hàng trăm truy vấn thì bạn cần phải chú ý tới tính năng cache của Joomla! và tham số cache của các module.

Tính năng debug của Joomla!

Sau khi bật tính năng debug của Joomla! bạn sẽ trông thấy các thông tin giống như dưới đây ở phía cuối website.

Profile Information

Application afterLoad: 0.001 seconds, 0.23 MB
Application afterInitialise: 0.073 seconds, 2.16 MB
Application afterRoute: 0.087 seconds, 2.83 MB
Application afterDispatch: 0.112 seconds, 3.64 MB
Application afterRender: 0.259 seconds, 4.45 MB

Memory Usage 4702404

16 queries logged

Tham số cache là gì?

Đây là một tham số đặc biệt trong Joomla. Khi tham số này được bật, nó sẽ báo hiệu cho Joomla tạo cache cho module và giúp tăng tốc cho website. Tại sao lại như vậy? Lấy thí dụ, module của chúng ta hiển thị 10 banner quảng cáo mới nhất. Nếu là một developer giỏi, chỉ cần 1 truy vấn cho module đó, còn ngược lại sẽ mất 10 truy vấn để thực thi. Đáng buồn là thực tế thì có rất nhiều module như vậy, có lẽ do các developer chỉ chú trọng tới các tính năng và chỉ muốn nhanh chóng phát hành sản phẩm tới cộng đồng mà không chú trọng tới hiệu suất thực thi.

Tối ưu Joomla

Khi Joomla cache mô-đun, sẽ chỉ mất một lần truy vấn khi trang chứa module đó được nạp lần đầu. Còn khi có người thứ hai ghé thăm trang này, đơn giản là Joomla chỉ cần lôi nó từ cache (một file nằm trong thư mục /cache của Joomla). Không phải thực hiện bất cứ truy vấn nào nữa và do vậy giảm tải cho máy chủ và tăng hiệu suất thực thi. Truy vấn chỉ được thực hiện lại sau khi cache hết hạn (theo mặc định của Joomla là 900s) - bạn có thể thiết lập lại giá trị này trong mục Site >> Global Configuration

Cách thêm tham số Cache cho module Joomla

Bước 1: Chỉnh sửa file XML của module

Bạn thêm vào đoạn mã sau:


Use global
No caching





Bước 2: Bật tính năng cache của module
Tối ưu Joomla

Thuật ngữ:

Module (mô-đun) là một trong các thành phần mở rộng của Joomla thường được dùng để hiện thị dữ liệu (VD: các tin bài mới nhất, các tin được xem nhiều nhất...)

Cache / Caching: tính năng tạo bộ nhớ đệm trong Joomla! để giảm số truy vấn và tăng tốc độ thực thi

Debug: tính năng gỡ lỗi trong Joomla!

Nguồn: http://f5vietnam.com/huong-dan/quan-tri-website-joomla/18-tang-toc-joomla-bang-cach-tao-cache-cho-module.html

Cách tối ưu để giúp tăng tốc website joomla! 1.5


Tối ưu để giúp tăng tốc website là công việc cần phải thực hiện, nhất là đối với những website có số lượng khách truy cập nhiều. Ngoài ra việc tối ưu website không chỉ làm tăng tốc độ tải trang mà còn làm giảm được lượng băng thông và tài nguyên của hệ thống máy chủ qua đó giúp website hoat động ổn định hơn.

Sau đây là những cách tối ưu để giúp tăng tốc website joomla! 1.5:

Tối ưu Template:

  • Xóa các vị trí hiển thị Module không sử dụng đến.
  • Giảm thiểu các mã PHP, JS,.. trong template.
  • Bỏ các chức năng không cần thiết.

Tối ưu tập tin CSS:

  • Tìm và xóa các thông số trùng lắp, các dòng chú thích và các khoảng trống.
  • Nhập chung các phần tử có các thông số giống nhau.
  • Sử dụng các công cụ giúp tối ưu tập tin CSS.

Bạn có thể dễ dàng tìm thấy các công cụ hỗ trợ tối ưu tập tin CSS trực tuyến bằng từ khóa "css compress", "css optimizer" hoặc tương tự.

Tối ưu các tập tin lệnh Java Script:

  • Kiểm tra và gỡ bỏ các dòng lệnh Java Script không cần thiết.
  • Sử dụng các công cụ giúp tối ưu tập tin Java Script.

Bạn có thể dễ dàng tìm thấy các công cụ hỗ trợ tối ưu tập tin Java Script trực tuyến bằng từ khóa "js compress", "js optimizer" hoặc tương tự.

Tối ưu các tập tin hình ảnh:

  • Giảm thiểu các hình ảnh không cần thiết trong Template, CSS và trong phần nội dung.
  • Giảm chất lượng ảnh xuống ở mức thấp mà có thể chấp nhận được để có dung lượng nhỏ.
  • Hạn chế kích thước ảnh cho phép tải lên bằng cách truy cập vào Global Configuration -> System -> Media Settings và giảm thông số của Maximum Size (in bytes).
    media_settings

Có tối ưu các tập tin hình ảnh bằng cách mở tập tin ảnh bằng các chương trình xử lý ảnh và chọn chức năng "Save for web".

Tối ưu Joomla:

  • Gỡ bỏ các thành phần mở rộng (Component, Module, plugin) không cần thiết.
  • Hạn chế sử dụng chức năng thống kê (Statistic, hits, counter,...) thay vào đó có thể sử dụng các chức năng thống kê của các trang web cung cấp dịch vụ miễn phí.
  • Tắt chức năng báo lỗi của Joomla! bằng cách truy cập vào Global Configuration -> System -> Media Settings -> System -> Error Reporting -> Chọn None
  • Bật chức năng nén trang GZIP Page Compression để giúp giảm dung lượng trang web.
    configuration_gzip

Sử dụng bộ nhớ đệm (Cache) trong Joomla!

  • Trước tiên truy cập vào Global Configuration -> System -> Media Settings -> System -> Cache Settings
    configuration_cache
  • Sau đó thiết lập thông số Cache cho các Module. Cache Time là định thời gian tự động xóa bộ nhớ tính bằng phút.
    module_cache_old
    module_cache_new

Sử dụng chức năng System Cache trong Joomla!

Đây là chức năng ẩn của Joomla! 1.5, chức năng này giúp "biến" toàn bộ thành trang web tĩnh html thông thường trong một khoảng thời gian qui định, việc này sẽ giúp giảm được số lượng truy vấn cơ sở dữ liệu.

  • Truy cập vào Extensions -> Plugin -> chọn System - Cache, bật chức năng này (Enabled) và thiết lập thời gian nhớ (Cache Lifetime).

system_cache

Khi đã bật chức năng Cache thì sau mỗi lần thay đổi thiết lập hoặc cập nhật nội dung thì sau thời gian Cache mới có hiệu lực. Nếu muốn áp dụng ngay thì phải xóa Cache bằng cách truy cập vào Menu Tools -> Clean Cache, đánh dấu chọn và nhấn Delete.

Nguồn: http://www.buaxua.vn/Thiet-ke-Web/Cach-toi-uu-de-giup-tang-toc-website-joomla-1.5.html


No comments:

Router Packet Networking

Đây là video ngắn khá hay, mô tả đường đi của một gói tin trên Mạng Internet.