Learning Hub
Kiểm thử & QA

Hiệu năng, bảo mật, khả năng phục hồi và production

4 phút đọc·Cập nhật 2026-09-07

Gắn kiểm thử hiệu năng, bảo mật và khả năng phục hồi với workload thực tế, mục tiêu rõ ràng và hành vi production quan sát được.

Hiệu năng, bảo mật, khả năng phục hồi và production

Chất lượng phi chức năng phải gắn với workload thực tế, mục tiêu rõ ràng, ranh giới dữ liệu nhạy cảm, khả năng phục hồi sau lỗi và hành vi production quan sát được.

Quy trình kiểm thử hiệu năng

flowchart LR
    A[Giai đoạn nghiệp vụ và vai trò người dùng] --> B[Tỷ lệ giao dịch và tốc độ đến]
    B --> C[Khối lượng dữ liệu dependency và trạng thái cache]
    C --> D[Test baseline load stress spike soak volume]
    D --> E[Độ trễ throughput lỗi saturation và recovery]
    E --> F{Đạt mục tiêu dưới tải thực tế}
    F -->|Không| G[Tìm bottleneck sửa và chạy lại cùng workload]
    F -->|Có| H[Bằng chứng năng lực và phát hành]

Đừng bắt đầu chỉ với một con số như "10.000 người dùng". Hãy định nghĩa vai trò, khu vực địa lý, tỷ lệ giao dịch, mức đồng thời hoặc tốc độ đến, tỷ lệ đọc/ghi, lịch sử dữ liệu, think time, background job, dependency bên ngoài, thời gian warm-up và trạng thái cache. Đo p50/p95/p99 latency, throughput, lỗi, saturation, CPU, memory, garbage collection, hành vi database, connection pool, lock, cache hit rate, độ sâu queue, Kafka lag, cuộc gọi dependency và khả năng phục hồi sau tải.

Bảo mật và quyền riêng tư

Áp dụng kiểm soát xuyên suốt SDLC: yêu cầu privacy và authorization, threat modeling, secure coding, quét SAST/SCA/secret/container/IaC, test API và tenant-isolation, penetration testing, kiểm tra khi triển khai, monitoring, incident response và review quyền truy cập.

Các test âm tính quan trọng gồm định danh xuyên user và xuyên tenant, role escalation, hành vi token/session/logout, authorization upload/download, rò rỉ qua export/search/cache/job/report/AI retrieval, prompt injection, và secret hoặc PII lộ trong repository, log, prompt, trace và lỗi.

Thử nghiệm khả năng phục hồi

flowchart TD
    A[Định nghĩa SLO RTO RPO và steady state của service] --> B[Gây một lỗi có kiểm soát]
    B --> C[Quan sát routing retry breaker queue alert và tác động người dùng]
    C --> D[Phục hồi service]
    D --> E[Đối soát state và dữ liệu]
    E --> F[So sánh detection và recovery với mục tiêu]
    F --> G[Tăng dần phạm vi ảnh hưởng]

Các thử nghiệm hữu ích gồm dừng một instance service, làm chậm nhà cung cấp thuế bên ngoài, làm banking sandbox không khả dụng, gián đoạn Kafka, gỡ một read replica, dừng batch giữa chừng, tạo backlog cho queue và restore từ backup. Với các luồng thay đổi trạng thái, hãy chứng minh idempotency và reconciliation sau khi phục hồi.

Quality gate CI/CD

  • Pull request: build/lint, unit/component, contract đã thay đổi, chính sách security/license, kiểm tra test bị skip, review của con người.
  • Integration/deployment: service integration, tương thích database, smoke test critical, test âm tính authorization và tenant, observability.
  • Release candidate: regression theo rủi ro, E2E critical, đối soát dữ liệu, đánh giá bộ locked-set của AI, hiệu năng, bảo mật, khả năng phục hồi sau lỗi, rollback hoặc tắt an toàn.

Kiểm tra số lượng test được phát hiện, đã chạy, bị skip và bị quarantine. Exit code bằng 0 một mình không đủ làm bằng chứng.

Đảm bảo chất lượng production

Sử dụng synthetic check, SLO và error budget, trace và correlation ID, đối soát payroll/payment, monitoring Kafka và queue, độ tươi của ETL, các chỉ số chất lượng/độ trễ/chi phí/drift của AI, canary rollout, tiêu chí rollback và incident review tạo ra test mới. Log và trace phải hỗ trợ chẩn đoán mà không tạo ra rò rỉ privacy.

Quay lại trang chính