Banking Demo - Phase 5 : Refactor kiến trúc — Cải thiện hệ thống để test tải với 1000 CCU
Mở đầu
Ở bài trước, chúng ta đã refactor kiến trúc Phase 5:
- tách namespace
- Kong DB mode
- Postgres/Redis HA.
- Kiến trúc mới chạy ổn, nhưng khi chạy load test —
seed_users.pytạo hàng trăm users, k6 bắn request liên tục — mới lộ vấn đề: request ồ ạt đổ thẳng vào backend, auth-service, account-service, transfer-service bị quá tải, latency tăng vọt, 5xx xuất hiện.
Nếu các bạn theo dõi series này và lab theo thì sẽ thấy đây là điểm chưa ổn.
Thế nên, tôi đã chuẩn bị cho phần tiếp theo ở đây.
Bài này nói về tuning — cụ thể là thêm RabbitMQ nằm giữa Kong và backend để đệm request, tránh flood trực tiếp vào các service. Đây chính là bước chuyển sang Phase 8 kiến trúc message queue.
Repo : https://github.com/kevinram164/banking-demo.git

TBD...
All rights reserved