Ứng dụng nhiều công nghệ thịnh hành như Kubernetes, Terraform, Spinnaker,… Giải pháp Lotus do Ban Giải pháp & Công nghệ – FPT Software phát triển có thể thực hiện load test trên nhiều nền tảng Cloud, hỗ trợ tạo nhiều request mô phỏng số lượng người dùng đồng thời (concurrent user) với nhiều giao thức khác nhau.

Một trong những vấn đề then chốt để luôn đảm bảo hiệu năng ổn định, thời gian phản hồi nhanh cho các dịch vụ trên nền tảng web chính là kiểm soát mức độ chịu tải. Kiểm thử chịu tải – Load testing là một hình thức kiểm tra phi chức năng được thực hiện để hiểu hành vi của một ứng dụng theo tải người dùng cụ thể. Phương pháp load test mô phỏng mức độ chịu tải thực tế của ứng dụng, kiểm thử cách ứng dụng hoạt động trong điều kiện hoạt động bình thường và hoạt động hiệu suất cao khi lượng người dùng đồng thời (concurrent users) tăng lên đột biến.

Bài toán xuất phát từ những “nỗi đau” của hệ thống

Các kịch bản load test có thể được thực hiện linh hoạt tại nhiều giai đoạn trong quá trình phát triển hệ thống, giúp “chẩn đoán” giới hạn của hệ thống để đưa ra những giải pháp khắc phục kịp thời, tránh gặp phải những sự cố tắc nghẽn, gây ra những tổn thất cho doanh nghiệp.

So với các giải pháp load test truyền thống, để thiết lập một cơ chế load test thì chi phí về nhân lực, vật lực cực kỳ tốn kém, mất rất nhiều thời gian để cài đặt, vận hành và duy trì hệ thống. Bên cạnh đó, người thực hiện kiểm thử cần có kiến thức về các công cụ và ngôn ngữ lập trình để thực hiện load test.

Nắm bắt cơ hội và tận dụng thế mạnh về Cloud, Ban Giải pháp & Công nghệ (STU), FPT Software đã phát triển Lotus, một giải pháp load test trên nền tảng Cloud nhằm mang lại môi trường kiểm thử dễ sử dụng và hiệu quả về mặt chi phí (on-demand). Sau 4 tháng nghiên cứu và xây dựng, giải pháp Lotus đã chính thức ra mắt vào tháng 9/2020.

Giải pháp hội tụ những công nghệ thịnh hành

Được phát triển trên nền tảng Cloud-native, Lotus tận dụng sức mạnh của nhiều nền tảng đám mây như AWS, Azure và GCP với chi phí hợp lý. Lotus ứng dụng các công nghệ thịnh hành như Kubernetes, Terraform, Spinnaker, phát triển chính trên ngôn ngữ Go. Người dùng có thể tạo request mô phỏng tùy biến số lượng người dùng đồng thời (concurrent-users) với các giao thức như HTTP, gRPC. Ngoài ra, Lotus có thể triển khai trên đa nền tảng Cloud ở nhiều vị trí địa lý khác nhau (geographical region).

Đối với các giải pháp kiểm tải truyền thống trên thị trường (browser-based and protocol-based tools), người dùng cần phải có kiến thức để thiết lập hệ thống và thực hiện biên soạn load test script một cách hoàn chỉnh. Trái lại, với Lotus, giải pháp được xây dựng để phục vụ nhu cầu cho nhiều đối tượng mà không đòi hỏi người dùng phải có nhiều kiến thức về công nghệ.

Người dùng có thể thao tác một cách dễ dàng và nhanh chóng bằng cách nhập Target URL và số lượng mô phỏng concurrent user để Lotus tự động xử lý các bước còn lại như: khởi tạo môi trường Cloud, thực hiện load test, tổng hợp kết quả, xuất báo cáo,…

Thao tác tạo load test plan.

Vận hành linh hoạt với nhiều tính năng đa dạng

Kiểm soát chi phí luôn là một trong những vấn đề được quan tâm nhất trong quá trình sử dụng các dịch vụ Cloud nói chung và giải pháp kiểm tải nói riêng. Lotus giúp người dùng ước lượng chi phí thực tế của từng lần thực hiện kiểm tải và báo cáo thống kê chi phí sử dụng theo từng mốc thời gian.

Song song đó, chi phí thực hiện ước tính luôn được cập nhật mới nhất để đảm bảo người dùng chỉ thanh toán chi phí đúng với nhu cầu sử dụng của mình (Pay-as-you-go), thay vì phải tốn những chi phí để duy trì và vận hành đối với các hệ thống truyền thống trước đây.

Bên cạnh các chức năng cốt lõi, Lotus còn mang tới những tiện ích giúp người dùng tiết kiệm nhiều thời gian và chủ động hơn trong việc thực hiện kiểm tải như hỗ trợ chạy lại (re-run), lập lịch kiểm tải (schedule) cho test plan. Trong đó, tính năng lập lịch kiểm tải linh hoạt cho phép cấu hình kiểm tải có thể chạy một lần hoặc định kỳ, thời điểm nào trong ngày hoặc dừng lại lịch chạy kiểm tải tùy theo nhu cầu và chiến lược của người dùng.

Hiện nay, giải pháp Lotus sở hữu 7 tính năng chính bao gồm: Manage load test project (Quản lý dự án kiểm tải); Perform load test (Thực hiện kiểm tải); Scheduling (Lập lịch kiểm tải); Reporting (Báo cáo thống kê kết quả kiểm tải); Billing (Quản lý chi phí thực hiện kiểm tải); Multi-language (Hỗ trợ đa ngôn ngữ (English, Japanese)); Mobility (Tương tác trên thiết bị di động).

Đặc biệt, giải pháp có thể hỗ trợ người dùng truy cập để xem báo cáo và tương tác “on-the-go” với hệ thống ngay trên thiết bị di động.

Trong thời gian qua, giải pháp đã bước đầu nhận được nhiều tín hiệu khả quan thông qua việc hỗ trợ cho các dự án nội bộ FSOFT thuộc lĩnh vực quản lý hợp đồng, quản lý profile nhân viên,… Việc thực hiện load test giúp các đội dự án nhận diện sớm những vấn đề về mặt hiệu năng mà các ứng dụng đang gặp phải để có biện pháp khắc phục nhanh chóng.

Không dừng lại tại đó, đội dự án sẽ tiếp tục phát triển để hỗ trợ nhu cầu cho CBNV toàn Tập đoàn FPT, xa hơn nữa là phục vụ cho các đối tác, khách hàng. Đội ngũ phát triển Lotus luôn đón nhận các ý kiến đóng góp để tích cực cải thiện và phát triển trên nhiều nên tảng Cloud, công nghệ xu hướng để phục vụ cho nhiều kịch bản kiểm thử đa dạng. Để trải nghiệm giải pháp Lotus, các CBNV có thể liên hệ anh Nguyễn Đức Tú – Ban Giải pháp & Công nghệ, FPT Software – Email [email protected].

Thảo My – Thanh Phương

Tin liên quan: