Chuyển tới nội dung chính

Performance Testing and Regular Maintenance

Kiểm Tra Hiệu Suất Cổng API

Các Điểm Kiểm Tra trong Kiểm Tra Hiệu Suất

  • Tổng Số Cuộc Gọi, Tổng Số Cuộc Gọi Thành Công, Tổng Số Cuộc Gọi Thất Bại, Trạng Thái Thành Công/Thất Bại:

Số lượng thất bại có thể không phải là lỗi nghiêm trọng xảy ra trong ứng dụng thực tế, chẳng hạn như 401 và 499, vì vậy cần kiểm tra mã trạng thái (trạng thái thành công/thất bại)

  • 5 Cuộc Gọi API Hàng Đầu - Biểu Đồ, Bảng

Bạn có thể thấy trạng thái của các API chủ yếu được gọi trong quá trình kiểm tra hiệu suất.

  • 5 Độ Trễ Phản Hồi API Hàng Đầu
    • Hiển thị các API có độ trễ phản hồi chậm khi gọi API.
    • Độ Trễ Phản Hồi Cổng: Độ trễ do Cổng gây ra
    • Độ trễ phản hồi Backend: Độ trễ phản hồi của ứng dụng Backend
    • Độ Trễ Phản Hồi API: Kết quả của Độ Trễ Phản Hồi Cổng và Độ Trễ Phản Hồi Backend
    • Vì tất cả các giá trị độ trễ phản hồi được đo bằng mili giây (ms), một độ trễ 100ms chỉ là 0.1 giây, điều này không được coi là chậm đáng kể. Thông thường, thời gian phản hồi khoảng 1000ms (1 giây) được coi là chậm
  • Chúng ta cũng cần kiểm tra thông số kỹ thuật của Istio đang chạy như một sidecar.

Giải Thích Cách Đo Hiệu Suất

  • Kiểm Tra RPS: Đo lường số yêu cầu mỗi giây
  • Kiểm Tra Khối: Đo lường trong các điều kiện mà kích thước dữ liệu yêu cầu và kích thước dữ liệu phản hồi được cấu hình.
  • Kiểm Tra Độ Trễ: Đo lường hiệu suất trong một môi trường mà độ trễ được áp dụng
  • Kiểm Tra Tuổi: Kiểm tra liên tục trong một thời gian dài, và đo lường rò rỉ bộ nhớ, và tăng dung lượng lưu trữ
SettingValueNote
CPU2 Core2 quy trình làm việc
Bộ Nhớ2 Gib
Số Lượng Bản Sao1 đơn vịCổng có dư thừa hay không
Yêu Cầu mỗi giây1000 đơn vịRPS
Kích Thước Dữ Liệu Yêu Cầu100 KBKhối (Yêu Cầu)
Kích Thước Dữ Liệu Phản Hồi100 KBKhối (Phản Hồi)
Độ Trễ Phản Hồi Bị Ép Buộc1 giâyĐộ Trễ
Thời gian kiểm tra8 giờLão hóa

Kết quả kiểm tra Điều kiện Phức tạp (RPS+Bulk+Delay+Aging)

  • Tổng thời gian thực hiện: 8 giờ Lão hóa
  • Tổng số yêu cầu: 28,800,000 cuộc gọi
  • Số yêu cầu thành công: 28,800,000 cuộc gọi
  • Tỷ lệ Thành công/Thất bại: Thành công 100.0% (Thất bại 0.0%)
  • Thời gian phản hồi trung bình: 15ms

Danh sách Kiểm tra Bảo trì Thường xuyên

Bảo trì Thường xuyên Thành phần APIM

  • Xác minh rằng Pod Thành phần APIM đang chạy bình thường
$ kubectl get pods -n {APIM_NAMESPACE}
NAME READY STATUS ...
deploy-apim-devlopers-portal-backend 1/1 Running
deploy-apim-devlopers-portal-frontend 1/1 Running
deploy-apim-bff 1/1 Running
deploy-apim-analysis-manager 1/1 Running
deploy-apim-gateway-manager 1/1 Running
deploy-apim-tenant-manager 1/1 Running
deploy-apim-tenant-manager-console 1/1 Running
deploy-apim-policy-manager 1/1 Running
apim-mariadb-master-0 1/1 Running
statefulset-pgauth-0 1/1 Running
  • Kiểm tra dung lượng Lưu trữ Cơ sở dữ liệu Thành phần APIM
$ kubectl exec -it apim-mariadb-master-0 bash -n {APIM_NAMESPACE}
(container mariadb) $ df -h
...
/dev/nvme8n1 4.9G 451M 4.4G 10% /bitnami/mariadb
...

$ kubectl exec -it statefulset-pgauth-0 bash -n {APIM_NAMESPACE}
(container postgresql) $ df -h
...
/dev/nvme10n1 4.9G 624M 4.3G 13% /pgdata
...
  • Truy cập Bảng điều khiển

Kiểm tra URL truy cập (Xác minh bằng thông tin Ingress) - Các tên máy chủ dưới đây chỉ là ví dụ.

$ kubectl get ingress -n {APIM_NAMESPACE}
NAME HOSTS
deploy-apim-devlopers-portal-backend apim.sk.com
deploy-apim-devlopers-portal-frontend apim-tenant.sk.com
deploy-apim-bff apim-developers.sk.com

Xác minh xem bạn có thể truy cập nó một cách chính xác trong trình duyệt web với thông tin trên:

  • Bảng điều khiển APIM

  • Bảng điều khiển Quản lý Thuê bao

  • Cổng thông tin Nhà phát triển

Bảo trì Thường xuyên của API Gateway

  • Truy cập màn hình Bảng điều khiển APIM và kiểm tra trạng thái Gateway một cách bình thường
    • Bảng điều khiển APIM > Quản lý Gateway > Chọn Gateway
    • Kiểm tra xem các hình lục giác có được lấp đầy hoàn toàn theo số lượng Replicas đã cấu hình hay không → Nếu có vấn đề (ví dụ: pod đang chờ), các hình lục giác sẽ hiển thị một hoạt ảnh quay.

  • Xác minh các cuộc gọi bình thường thông qua dữ liệu Ghi nhật ký (Tham khảo các mục ghi nhật ký API)
    • Kibana > Bảng điều khiển > Bảng điều khiển APIM
    • Kiểm tra số lượng cuộc gọi và trạng thái thành công/thất bại

  • Kiểm tra Tài nguyên API Gateway thông qua dữ liệu Giám sát (Tham khảo các mục giám sát API Gateway): Grafana > Bảng điều khiển > Duyệt > Bảng điều khiển APIM:
    • Bảng điều khiển liên quan đến các cuộc gọi API
    • Kiểm tra số lượng cuộc gọi mỗi giây
    • Kiểm tra độ trễ API

  • Grafana > Duyệt Bảng điều khiển > Bảng điều khiển Container > Kubernetes: Triển khai:
    • Kiểm tra Tài nguyên API Gateway
    • Kiểm tra CPU, Bộ nhớ