Quá trình 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ể tiến hành 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ố của mình để 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 lên 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 thông thường và xác định 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 theo dõi các chỉ số này đặc biệt quan trọng trong khung thời gian quan trọng đối với hoạt động kinh doanh hoặc sau khi mã mới được đẩy vào môi trường sản xuất.
Xác định các chỉ số về độ trễ
Đảm bảo rằng bạn duy trì giao diện người dùng 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 nữa từ ứng dụng di động. Bạn cũng nên đo lường và theo dõi độ trễ cho 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ố nên 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ề lưu lượng
Lưu lượng là một chỉ số đo lường tổng số yêu cầu được phân phát trong một khoảng thời gian nhất định. Lưu lượng truy cập có thể chịu ảnh hưởng của độ 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 lưu lượng truy cập.
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ố 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 hàng đợi xử lý, chẳng hạn như pub/sub hoặc số luồng
Không chỉ là giá trị trung bình
Một sai lầm thường gặp khi đo lường hiệu suất là chỉ xem xét trường hợp trung bình (trung bình). Mặc dù hữu ích, nhưng thông tin này không cung cấp thông tin chi tiết về mức phân phối độ trễ. Một chỉ số phù hợp hơn để theo dõi là phân vị hiệu suất, ví dụ: phân vị thứ 50/75/90/99 cho một chỉ số.
Nhìn chung, bạn có thể tối ưu hoá theo hai bước. Trước tiên, hãy tối ưu hoá độ trễ theo thứ tự thứ 90. Sau đó, hãy xem xét phân vị thứ 99 – còn gọi là độ trễ đuôi: một phần nhỏ các yêu cầu mất nhiều thời gian hơn để hoàn tất.
Giám sát phía máy chủ để biết kết quả chi tiết
Thông thường, bạn nên sử dụng tính năng phân tích tài nguyên phía máy chủ để theo dõi các chỉ số. Bên máy chủ thường dễ đo lường hơn nhiều, cho phép truy cập vào dữ liệu chi tiết hơn và ít bị nhiễu do các vấn đề về kết nối.
Giám sát trình duyệt để có chế độ hiển thị toàn diện
Phân tích tài nguyên trình duyệt có thể cung cấp thêm thông tin chi tiết về trải nghiệm của người dùng cuối. Báo cáo này có thể cho biết những trang có yêu cầu chậm, sau đó bạn có thể liên kết 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 thời gian tải trang ngay từ đầu trong báo cáo thời gian tải trang. Báo cáo này cung cấp một số chế độ xem hữu ích để hiểu rõ trải nghiệm người dùng trên trang web của bạn, cụ thể:
- Thời gian tải trang
- Thời gian tải lệnh 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à theo dõi 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.
Hãy xem Hướng dẫn ghi nhật ký để 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ể tạo các chỉ số dựa trên dữ liệu đã ghi lại để nắm được thông tin về ứng dụng của mình thông qua tính năng Giám sát của Google Cloud. 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 để tạo chỉ số bằng cách sử dụng nhật ký được gửi đến Google Cloud Logging.
Ngoài ra, bạn có thể sử dụng thư viện ứng dụng của Monitoring để 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 theo dõi giá trị is_fault
để hiểu rõ hơn về tỷ lệ lỗi trong ứng dụng. 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 tính năng Ghi nhật ký trên đám mây, nhãn cho phép bạn nhóm các chỉ số thành danh mục dựa trên 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 tính năng Ghi nhật ký trên đám mây để xem cách số lỗi được phân tích theo phương thức API Google Ads.
Khi đã định cấu hình chỉ số ErrorCount
và nhãn Method
, bạn có thể tạo một biểu đồ mới trong trang tổng quan Giám sát để theo dõi ErrorCount
, được nhóm theo Method
.
Cảnh báo
Trong Cloud Monitoring và các công cụ khác, bạn có thể định cấu hình các chính sách cảnh báo để chỉ định thời điểm và cách thức 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.