Trong thế giới kiểm tra hiệu suất, thông lượng là một trong những chỉ số quan trọng nhất nhưng thường bị hiểu lầm. Là các kỹ sư hiệu suất và chuyên gia QA, việc có hiểu biết rõ ràng về thông lượng là điều cần thiết để đo chính xác hiệu suất ứng dụng và xác định các nút thắt tiềm năng. Bài viết kỹ thuật toàn diện này sẽ khám phá thông lượng là gì, cách đo lường nó và tại sao nó quan trọng trong các tình huống kiểm tra hiệu suất.
Trước khi đi vào các chỉ số thông lượng, đáng lưu ý rằng việc kiểm tra hiệu suất hiệu quả thường bắt đầu với khả năng kiểm tra API mạnh mẽ.
APIdog đã nổi lên như một sự thay thế hoàn chỉnh cho Postman, hợp nhất phát triển API, kiểm tra và tài liệu trong một nền tảng thống nhất.

Với các tính năng như kiểm tra tự động, giám sát hiệu suất và quy trình làm việc hợp tác, APIdog cung cấp nền tảng thiết yếu để hiểu cách mà các API của bạn hoạt động dưới tải—biến nó thành một công cụ đồng hành có giá trị khi thực hiện các thử nghiệm thông lượng mà chúng tôi sẽ khám phá trong bài viết này.

Bằng cách thiết lập chức năng API cơ bản với các công cụ như APIdog, bạn có thể phân tích hiệu quả hơn các nút thắt thông lượng trong chiến lược kiểm tra hiệu suất tổng thể của mình.
Định Nghĩa Thông Lượng Trong Kiểm Tra Hiệu Suất
Thông lượng trong kiểm tra hiệu suất có thể được định nghĩa theo ba cách chính:
- Số lượng Giao dịch theo Thời gian: Về cơ bản, thông lượng là số lượng giao dịch được tạo ra trong một khoảng thời gian cụ thể trong một bài kiểm tra. Nó đo lường số lượng yêu cầu hoặc hoạt động mà hệ thống của bạn có thể xử lý trong một khoảng thời gian nhất định.
- Đo lường Khả năng Cần thiết: Thông lượng biểu thị lượng khả năng mà một trang web hoặc ứng dụng có thể xử lý, cho thấy khả năng xử lý của nó trong các điều kiện tải khác nhau.
- Chỉ số Mục tiêu Hiệu suất: Trước khi bắt đầu các bài kiểm tra hiệu suất, các tổ chức thường thiết lập các mục tiêu thông lượng—các con số yêu cầu cụ thể mỗi giờ mà ứng dụng phải xử lý thành công.
Theo các thuật ngữ kỹ thuật, thông lượng thường được thể hiện dưới dạng giao dịch mỗi giây (TPS) hoặc yêu cầu mỗi giây (RPS), biến nó thành một đơn vị đo lường cơ bản trong kiểm tra hiệu suất.
Thông Lượng Trong Bối Cảnh Thực Tế: Một Phép So Sánh
Để hiểu thông lượng theo cách thực tiễn, hãy cân nhắc phép so sánh này:
Hãy tưởng tượng một trạm xăng có tên là "Joe's Gas" với ba cây bơm. Mỗi nhân viên mất đúng một phút để đổ đầy bất kỳ chiếc xe nào, bất kể kích thước bình xăng. Với những giới hạn này, Joe's Gas có thông lượng tối đa là ba xe mỗi phút—dù có bao nhiêu chiếc xe đến, trạm chỉ có thể phục vụ ba chiếc mỗi phút.
Điều này đại diện cho một khái niệm hiệu suất quan trọng: thông lượng tối đa là một ràng buộc trên cố định. Khi số lượng phương tiện đến nhiều hơn số có thể xử lý (hơn ba mỗi phút), chúng sẽ tạo thành hàng đợi và phải chờ.
Nguyên tắc tương tự áp dụng cho các ứng dụng web. Nếu một ứng dụng nhận 50 yêu cầu mỗi giây nhưng chỉ có thể xử lý 30 giao dịch mỗi giây, 20 yêu cầu bổ sung cuối cùng sẽ chờ đợi trong hàng đợi, có thể gây ra sự chậm trễ và giảm trải nghiệm người dùng.
Đo Lường Thông Lượng Trong Kiểm Tra Hiệu Suất
Các công cụ kiểm tra hiệu suất như LoadRunner, JMeter và k6 được trang bị các thiết bị giám sát thông lượng giúp hình dung và phân tích chỉ số này trong suốt quá trình thử nghiệm. Một quy trình đo lường thông lượng điển hình tuân theo mô hình này:
- Giai đoạn Tăng dần: Khi người dùng ảo bắt đầu gửi yêu cầu, thông lượng tăng theo tỷ lệ.
- Trạng thái Ổn định: Khi tất cả người dùng đều hoạt động và làm việc theo một mô hình nhất quán, thông lượng thường ổn định ở một mức cao.
- Khám Phá Giới Hạn Tối Thượng: Để xác định thông lượng tối đa của một môi trường, các kiểm thử viên dần dần tăng tải người dùng cho đến khi thông lượng ngừng tăng hoặc bắt đầu giảm.
- Xác định Nút Thắt: Khi thông lượng ổn định hoặc giảm mặc dù tải người dùng tăng, điều này thường chỉ ra một nút thắt trong ứng dụng.
Phân Tích Kết Quả Thông Lượng: Ba Kịch Bản Kiểm Tra
Hãy xem xét ba kịch bản thử nghiệm thông lượng khác nhau và những gì chúng tiết lộ:
Kịch Bản Kiểm Tra #1: Thông Lượng Khỏe Mạnh
Trong một mô hình thông lượng khỏe mạnh với 25 người dùng đồng thời, chúng tôi nhận thấy rằng một khi tất cả người dùng đã đăng nhập và hoạt động, thông lượng duy trì tương đối ổn định. Thông lượng ổn định này cho thấy hệ thống đang xử lý tải một cách hiệu quả mà không bị suy giảm.
Kịch Bản Kiểm Tra #2: Thông Lượng Giảm
Trong kịch bản đáng lo ngại này, thông lượng ban đầu tăng lên khi người dùng đăng nhập, nhưng khi tất cả người dùng đã hoạt động, thông lượng lại bất ngờ giảm thay vì ổn định. Mô hình này thường cho thấy một nút thắt hiệu suất nghiêm trọng.
Kịch Bản Kiểm Tra #3: Xác Định Nút Thắt Cơ Sở Dữ Liệu
Bằng cách chồng chéo dữ liệu thông lượng với các chỉ số chẩn đoán (chẳng hạn như biểu đồ 'J2EE – Thời gian xử lý giao dịch tại phần tử' của HP Diagnostics), chúng tôi có thể xác định nguyên nhân gốc rễ của các vấn đề thông lượng. Trong ví dụ này, lớp cơ sở dữ liệu đang tiêu tốn quá nhiều thời gian xử lý, tạo ra hàng đợi yêu cầu và làm tăng thời gian phản hồi.
Các Yếu Tố Ảnh Hưởng Đến Thông Lượng Mạng và Độ Trễ
N several technical factors can contribute to degraded throughput and increased latency:
Vấn Đề Phần Cứng
- Thiết Bị Cũ hoặc Hỏng: Các bộ định tuyến lỗi thời hoặc thiết bị hoạt động không tốt có thể hạn chế đáng kể hiệu quả luồng dữ liệu
- Giới Hạn Cơ Sở Hạ Tầng Mạng: Các hạn chế vật lý trong kiến trúc mạng hạn chế băng thông
Yếu Tố Liên Quan Đến Mạng
- Giao Thông Nặng: Các yêu cầu đồng thời quá mức dẫn đến mất gói dữ liệu
- Độ Trễ Lan Truyền: Thời gian cần thiết để các gói dữ liệu di chuyển giữa các điểm với tốc độ ánh sáng
- Phương Tiện Truyền Tải: Các phương tiện khác nhau (sợi quang, không dây, đồng) có khả năng thông lượng khác nhau
- Kích Thước Gói: Các gói lớn hơn cần nhiều thời gian hơn để truyền tải và nhận
Độ Trễ Xử Lý
- Thời Gian Xử Lý Bộ Định Tuyến: Các nút cổng phải kiểm tra và có thể điều chỉnh tiêu đề gói dữ liệu
- Độ Trễ Máy Tính và Lưu Trữ: Các thiết bị trung gian như bộ chuyển mạch có thể gây ra độ trễ trong quá trình lưu trữ và truy cập đĩa
- Kích Thích Tín Hiệu: Các bộ lặp được sử dụng để khuếch đại tín hiệu có thể tạo ra độ trễ bổ sung
Công Cụ Đo Lường Và Giám Sát Thông Lượng
Kiểm tra hiệu suất hiệu quả yêu cầu các công cụ thích hợp để đo lường thông lượng. Các tùy chọn phổ biến bao gồm:
- Giao Thức Quản Lý Mạng Đơn Giản (SNMP): Một giao thức lớp ứng dụng để quản lý và giám sát các thiết bị mạng, cung cấp một phương thức giao tiếp phổ quát cho các thiết bị trong môi trường đơn và đa nhà cung cấp. SNMP v3 cung cấp các tính năng bảo mật nâng cao.
- Hệ Thống Quản Lý Windows (WMI): Bộ thông số của Microsoft để tập trung quản lý các thiết bị và ứng dụng chạy trên Windows, cung cấp quyền truy cập vào trạng thái hệ thống, cấu hình và cài đặt bảo mật.
- tcpdump: Một công cụ dòng lệnh mã nguồn mở để giám sát và ghi lại lưu lượng mạng, hiển thị tiêu đề gói và hỗ trợ các toán tử tìm kiếm Boolean để lọc.
- Wireshark: Một công cụ phân tích lưu lượng mạng mã nguồn mở toàn diện cung cấp cái nhìn sâu sắc về thời gian truyền tải, giao thức, tiêu đề và thông tin nguồn / điểm đến.
- Các Công Cụ Kiểm Tra Hiệu Suất: Hầu hết các công cụ kiểm tra hiệu suất chuyên dụng như LoadRunner, JMeter và k6 đều bao gồm giám sát thông lượng tích hợp, mặc dù chúng có thể gọi là "yêu cầu mỗi giây."
Mối Quan Hệ Giữa Thông Lượng và Các Chỉ Số Hiệu Suất Khác
Thông lượng không tồn tại một cách độc lập—nó liên kết với các chỉ số hiệu suất quan trọng khác:
Thông Lượng so với Thời Gian Phản Hồi
Thông lượng cao hơn thường dẫn đến thời gian phản hồi tăng lên khi hệ thống xử lý nhiều yêu cầu hơn. Mục tiêu của việc tối ưu hóa là tối đa hóa thông lượng trong khi duy trì thời gian phản hồi chấp nhận được.
Thông Lượng so với Số Người Dùng Đồng Thời
Thường có một mối tương quan giữa tải người dùng và thông lượng cho đến một point nhất định. Sau khi đạt được công suất tối đa, thông lượng có thể ổn định hoặc giảm bất kể số người dùng bổ sung.
Thông Lượng so với Sử Dụng Tài Nguyên
Tài nguyên hệ thống (CPU, bộ nhớ, đĩa I/O, mạng) ảnh hưởng trực tiếp đến khả năng thông lượng. Giám sát việc sử dụng tài nguyên song song với thông lượng giúp xác định các nút thắt liên quan đến phần cứng.
Tối Ưu Hóa Thông Lượng Trong Kiểm Tra Hiệu Suất
Dựa trên phân tích thông lượng, có thể triển khai một số chiến lược tối ưu hóa:
- Mở rộng Ngang: Thêm nhiều máy chủ hơn để phân phối tải và tăng công suất thông lượng tổng thể
- Mở rộng Dọc: Nâng cấp phần cứng hiện có (nhiều lõi CPU hơn, RAM, đĩa nhanh hơn) để cải thiện khả năng xử lý
- Tối Ưu Hóa Mã: Tái cấu trúc các thuật toán và truy vấn cơ sở dữ liệu không hiệu quả giới hạn thông lượng
- Pooling Kết Nối: Thiết lập và tái sử dụng các kết nối cơ sở dữ liệu để giảm chi phí
- Chiến Lược Bộ Nhớ Đệm: Triển khai bộ nhớ đệm phù hợp để giảm tải tính toán cho các yêu cầu lặp lại
- Cân Bằng Tải: Phân phối các yêu cầu đến nhiều máy chủ để tối ưu hóa việc sử dụng tài nguyên
Kết Luận: Tầm Quan Trọng Của Thông Lượng Trong Kiểm Tra Hiệu Suất
Thông lượng là một trong những chỉ số quan trọng nhất trong kiểm tra hiệu suất, cung cấp cái nhìn trực tiếp về khả năng xử lý của ứng dụng dưới các điều kiện tải khác nhau. Bằng cách hiểu rõ các mô hình thông lượng và mối quan hệ của chúng với các chỉ số hiệu suất khác, các kiểm thử viên có thể:
- Thiết lập các mục tiêu hiệu suất thực tế dựa trên yêu cầu kinh doanh
- Xác định các nút thắt của hệ thống trước khi chúng ảnh hưởng đến môi trường sản xuất
- Đưa ra các quyết định dựa trên dữ liệu về quy mô cơ sở hạ tầng và tối ưu hóa
- Xác nhận rằng các cải tiến hiệu suất thực sự mang lại công suất gia tăng
Đối với kiểm tra hiệu suất toàn diện, thông lượng luôn nên được phân tích song song với các chỉ số liên quan như thời gian phản hồi, tỷ lệ lỗi và việc sử dụng tài nguyên để cung cấp một bức tranh hoàn chỉnh về hiệu suất ứng dụng. Bằng cách thành thạo phân tích thông lượng, các kỹ sư hiệu suất có thể đảm bảo ứng dụng cung cấp hiệu suất nhất quán và đáng tin cậy ngay cả dưới các tình huống tải cao.
Khi chúng ta đã khám phá vai trò quan trọng của thông lượng trong kiểm tra hiệu suất, đáng để xem xét lại cách mà các công cụ như APIdog có thể bổ sung cho chiến lược kiểm tra tổng thể của bạn.
Bằng cách sử dụng APIdog cho việc xác minh API sơ bộ và mô phỏng tải trước các bài kiểm tra hiệu suất quy mô lớn, các nhóm có thể xác định các nút thắt thông lượng tiềm năng ở cấp độ API sớm trong chu trình phát triển. Giao diện trực quan của APIdog cho phép các nhóm nhanh chóng tạo, xác thực và tài liệu các điểm cuối API, trong khi khả năng giám sát hiệu suất của nó cung cấp cái nhìn ban đầu về thời gian phản hồi và giới hạn thông lượng.

Công việc chuẩn bị này với APIdog tạo điều kiện cho việc chuyển tiếp mượt mà sang các bài kiểm tra thông lượng toàn diện, cho phép các nỗ lực tối ưu hóa hiệu suất được nhắm đến hơn. Khi các bài kiểm tra hiệu suất toàn diện tiết lộ các vấn đề thông lượng, việc có một cấu trúc API được tài liệu hóa tốt trong APIdog giúp dễ dàng hơn trong việc cô lập và giải quyết các điểm cuối cụ thể góp phần vào các nút thắt, tạo ra quy trình kiểm tra hiệu suất hiệu quả hơn.
