1. PHP X-Ray là gì?

PHP X-Ray là công cụ phân tích hiệu năng nâng cao được tích hợp sẵn trên hệ điều hành CloudLinux. Công cụ này cho phép người quản trị website "nhìn thấu" vào bên trong mã nguồn để xác định chính xác nguyên nhân gây chậm website mà không cần can thiệp hay chỉnh sửa code.

upload.png

PHP X-Ray giải quyết vấn đề gì? Khi website tải chậm, rất khó để biết nguyên nhân đến từ đâu:

  • Do plugin/theme WordPress bị lỗi?
  • Do truy vấn cơ sở dữ liệu (Database) chậm?
  • Do kết nối đến API bên thứ 3 (External request)?
  • Hay do tài nguyên máy chủ?

PHP X-Ray sẽ thu thập dữ liệu chi tiết của từng truy cập và chỉ ra chính xác nút thắt đang làm chậm hệ thống.

2. Khi nào nên sử dụng PHP X-Ray?

Bạn nên sử dụng công cụ này trong các trường hợp:

  • Website tải rất chậm (Time To First Byte - TTFB cao).
  • Website thường xuyên gặp lỗi 500, 502, 503 do quá tải tài nguyên.
  • Cần kiểm tra xem plugin mới cài đặt có ảnh hưởng đến tốc độ web hay không.
  • Cần tối ưu hóa các câu lệnh truy vấn SQL.

3. Cách sử dụng PHP X-Ray

Bước 1: Truy cập vào mục X-Ray App và khởi tạo tiến trình theo dõi

Chúng ta mở X-Ray App trong mục Software lên

upload.png

Ở giao diện mặc định sẽ không có gì, để khởi tạo tiến trình, click Start tracing:

upload.png

 

    upload.png

    Một số các thông số lưu ý gồm:

    • URL: tên miền cần theo dõi và đường dẫn cụ thể, ví dụ /blog.
    • Client's IP: mặc định để * để lấy toàn bộ IP gửi request.
    • Record for: gồm 2 options là Time period (chu kỳ thời gian) hoặc request (số lượng truy vấn), mặc định sẽ sử dụng Request là lấy 20 requests đầu tiên

    Sau khi setup xong ta chọn Run để bắt đầu tiến trình theo dõi, lượng truy cập Real Time sẽ xuất hiện ở đây, mặc định tiến trình cũng sẽ được Auto refresh để lấy thông tin liên tục

    upload.png
    Một tiến trình như trên sẽ có một số thông tin gồm: URL, Tracing status (trạng thái theo dõi), Collected requests (tổng số lượng requests gửi đến), Expires in (hạn của tiến trình), Created và Actions.

    Bước 2. Thu thập dữ liệu

    Để thu thập dữ liệu, ta click vào nút hình con mắt ở mục Actions:

    upload.png
    Đây là giao diện mặc định của Recorded sessions:

    upload.png

    Khi có các truy cập, thông tin sẽ được hiển thị tại đây:

    upload.png

    Từ đó chúng ta có thể xem thông tin gồm IP truy cập, thời gian truy cập và độ trễ khi truy cập.

    Như ví dụ trên thì URL trên website của chúng ta truy cập ổn định.

    Để xem cụ thể các thông tin, ta click vào URL trên

    upload.png

    Từ ảnh trên, chúng ta có thể phân loại được nguyên nhân gây load chậm (nếu có), thời gian truy vấn cụ thể của từng plugin,...

    Ví dụ ở trên website đang bị load chậm hơn bởi plugin Woocomerce, chiếm 24,37%

    Ngoài ra, ta còn có list top các database queries:

    upload.png
    Và các chức năng hệ thống khác:

    upload.png
    Chúng ta cũng có thể tải xuống bản báo cáo này dạng PDF bằng nút download as PDF ở trên góc bên tay phải:

    upload.png

    Khi không muốn sử dụng nữa, ta có thể tạm thời off tracing bằng cách click vào nút ô vuông ở mục Actions:

    upload.png

    upload.png

    Để xóa tracing URL, chúng ta phải stop tracing trước, sau đó trong app sẽ hiển thị ra icon thùng rác ở mục Actions để xóa

    upload.png

    4. Một số lưu ý quan trọng

    • Không bật X-Ray liên tục: Chỉ bật khi cần kiểm tra lỗi. Việc bật tracing liên tục có thể gây ảnh hưởng nhỏ đến hiệu năng website (overhead).
    • Cache: Nếu website đang dùng Cache (LSCache, WP Rocket...), X-Ray có thể không bắt được dữ liệu chính xác vì trang được load từ Cache thay vì xử lý PHP. Hãy tắt Cache tạm thời hoặc sử dụng trình duyệt ẩn danh khi đang chạy Trace.

     

    PHP X-Ray không chỉ là công cụ giám sát, mà là giải pháp giúp chúng ta chủ động làm chủ hiệu năng website của mình. Thay vì mất nhiều giờ để tìm kiếm lỗi thủ công, giờ đây chỉ với vài thao tác đơn giản, việc xác định chính xác 'điểm nghẽn' đang làm chậm hệ thống sẽ dễ dàng hơn rất nhiều.