Việc tối ưu hoá hiệu suất bắt đầu bằng việc xác định các chỉ số chính, thường liên quan đến độ trễ và thông lượng. Việc bổ sung tính năng giám sát để thu thập và theo dõi các chỉ số này sẽ cho thấy các điểm yếu trong ứng dụng. Với các chỉ số, bạn có thể tối ưu hoá để cải thiện các chỉ số hiệu suất.
Ngoài ra, nhiều công cụ giám sát cho phép bạn thiết lập cảnh báo cho các chỉ số để bạn được thông báo khi đạt đến một ngưỡng nhất định. Ví dụ: bạn có thể thiết lập cảnh báo để thông báo cho bạn khi tỷ lệ phần trăm yêu cầu không thành công tăng hơn x% so với mức bình thường. Các công cụ giám sát có thể giúp bạn xác định hiệu suất bình thường và xác định các mức tăng đột biến bất thường về độ trễ, số lượng lỗi và các chỉ số chính khác. Khả năng giám sát các chỉ số này đặc biệt quan trọng trong các khung thời gian quan trọng đối với doanh nghiệp hoặc sau khi mã mới được chuyển sang môi trường thực tế.
Xác định các chỉ số về độ trễ
Đảm bảo bạn duy trì giao diện người dùng ở mức phản hồi nhanh nhất có thể, lưu ý rằng người dùng mong đợi các tiêu chuẩn cao hơn đối với ứng dụng di động. Bạn cũng nên đo lường và theo dõi độ trễ đối với các dịch vụ phụ trợ, đặc biệt là vì độ trễ có thể dẫn đến các vấn đề về thông lượng nếu không được kiểm tra.
Sau đây là các chỉ số được đề xuất để theo dõi:
- Thời lượng yêu cầu
- Thời lượng yêu cầu ở mức chi tiết của hệ thống con (chẳng hạn như lệnh gọi API)
- Thời lượng công việc
Xác định các chỉ số về thông lượng
Thông lượng là thước đo tổng số yêu cầu được xử lý trong một khoảng thời gian nhất định. Thông lượng có thể bị ảnh hưởng bởi độ trễ của các hệ thống con, vì vậy, bạn có thể cần tối ưu hoá độ trễ để cải thiện thông lượng.
Sau đây là một số chỉ số được đề xuất để theo dõi:
- Số truy vấn mỗi giây
- Kích thước dữ liệu được chuyển mỗi giây
- Số lượng thao tác I/O mỗi giây
- Mức sử dụng tài nguyên, chẳng hạn như mức sử dụng CPU hoặc bộ nhớ
- Kích thước của nhật ký tồn đọng cần xử lý, chẳng hạn như pub/sub hoặc số lượng luồng
Không chỉ là giá trị trung bình
Một lỗi thường gặp khi đo lường hiệu suất là chỉ xem xét trường hợp trung bình. Mặc dù điều này hữu ích, nhưng không cung cấp thông tin chi tiết về mức phân phối độ trễ. Một chỉ số tốt hơn để theo dõi là các phân vị hiệu suất, ví dụ: phân vị thứ 50/75/90/99 cho một chỉ số.
Thông thường, bạn có thể tối ưu hoá theo 2 bước. Trước tiên, hãy tối ưu hoá cho độ trễ ở phân vị thứ 90. Sau đó, hãy xem xét phân vị thứ 99, còn được gọi là độ trễ đuôi: phần nhỏ của các yêu cầu mất nhiều thời gian hơn để hoàn thành.
Giám sát phía máy chủ để có kết quả chi tiết
Bạn nên sử dụng tính năng lập hồ sơ phía máy chủ để theo dõi các chỉ số. Phía máy chủ thường dễ dàng gắn mã theo dõi hơn nhiều, cho phép truy cập vào dữ liệu thật chi tiết hơn và ít bị ảnh hưởng bởi các vấn đề về kết nối.
Giám sát trình duyệt để có khả năng hiển thị toàn diện
Tính năng lập hồ sơ trình duyệt có thể cung cấp thông tin chi tiết bổ sung về trải nghiệm của người dùng cuối. Tính năng này có thể cho biết những trang có yêu cầu chậm, sau đó bạn có thể tương quan với tính năng giám sát phía máy chủ để phân tích thêm.
Google Analytics cung cấp tính năng giám sát sẵn có cho thời gian tải trang trong báo cáo về thời gian tải trang. Tính năng này cung cấp một số khung hiển thị hữu ích để hiểu trải nghiệm người dùng trên trang web của bạn, đặc biệt là:
- Thời gian tải trang
- Thời gian tải khi chuyển hướng
- Thời gian phản hồi của máy chủ
Giám sát trên đám mây
Bạn có thể sử dụng nhiều công cụ để thu thập và giám sát các chỉ số hiệu suất cho ứng dụng của mình. Ví dụ: bạn có thể sử dụng Google Cloud Logging để ghi lại các chỉ số hiệu suất vào Dự án Google Cloud, sau đó thiết lập trang tổng quan trong Google Cloud Monitoring để giám sát và phân đoạn các chỉ số đã ghi lại.
Hãy xem hướng dẫn về Cloud Logging để biết ví dụ về cách ghi nhật ký vào Google Cloud Logging từ một trình chặn tuỳ chỉnh trong thư viện ứng dụng Python. Với dữ liệu đó có trong Google Cloud, bạn có thể xây dựng các chỉ số dựa trên dữ liệu đã ghi lại để có thể xem được ứng dụng của mình thông qua Google Cloud Monitoring. Hãy làm theo hướng dẫn về các chỉ số dựa trên nhật ký do người dùng xác định để xây dựng các chỉ số bằng nhật ký được gửi đến Google Cloud Logging.
Ngoài ra, bạn có thể sử dụng các thư viện ứng dụng Monitoring libraries để xác định các chỉ số trong mã và gửi trực tiếp các chỉ số đó đến Monitoring, tách biệt với nhật ký.
Ví dụ về chỉ số dựa trên nhật ký
Giả sử bạn muốn giám sát giá trị is_fault để hiểu rõ hơn về tỷ lệ lỗi trong ứng dụng của mình. Bạn có thể trích xuất giá trị is_fault từ nhật ký
vào một chỉ số bộ đếm mới, ErrorCount.


Trong Cloud Logging, nhãn cho phép bạn nhóm các chỉ số thành danh mục
dựa trên các dữ liệu khác trong nhật ký. Bạn có thể định cấu hình nhãn cho trường method
được gửi đến Cloud Logging để xem số lượng lỗi được
chia theo phương thức của Google Ads API.
Với chỉ số ErrorCount và nhãn Method đã định cấu hình, bạn có thể tạo
biểu đồ mới
trong
trang tổng quan Monitoring để giám sát ErrorCount, được nhóm theo Method.

Cảnh báo
Bạn có thể định cấu hình các chính sách cảnh báo trong Cloud Monitoring và các công cụ khác để chỉ định thời điểm và cách các chỉ số kích hoạt cảnh báo. Để biết hướng dẫn về cách thiết lập cảnh báo trong Cloud Monitoring, hãy làm theo hướng dẫn về cảnh báo.