Kiến trúc API - Các cuộc gọi đồng bộ, không đồng bộ và song song
Một khóa học cấp tốc với đồ họa thông tin về ý nghĩa của chúng và khi nào nên sử dụng cái nào.

Lý lịch
Một khía cạnh quan trọng của việc phát triển API REST là cách mà khách hàng đưa ra yêu cầu và nhận phản hồi.
Trong phân đoạn này, tôi sẽ đề cập đến 3 phương pháp chính để tạo yêu cầu trong API REST - lệnh gọi đồng bộ, không đồng bộ và song song.
Tôi sẽ phác thảo những ưu và nhược điểm của từng phương pháp và thời điểm sử dụng phương pháp nào để đạt được hiệu suất tối đa.
đọc liên quan
Tôi đã viết rất nhiều về các phương pháp hay nhất về thiết kế, hiệu suất, bảo mật, lập phiên bản và lập biểu đồ API. Hãy xem loạt bài của tôi được liên kết bên dưới để tìm hiểu thêm!
Cuộc gọi đồng bộ
Các cuộc gọi đồng bộ là phương pháp phổ biến nhất để thực hiện các yêu cầu trong API REST.
Trong các cuộc gọi đồng bộ, ứng dụng khách gửi yêu cầu đến máy chủ và đợi phản hồi trước khi tiếp tục bước tiếp theo. Điều này có nghĩa là ứng dụng khách bị chặn cho đến khi nhận được phản hồi từ máy chủ.
Ưu điểm:
- Các cuộc gọi đồng bộ rất dễ thực hiện và dễ hiểu.
- Chúng rất hữu ích cho các ứng dụng nhỏ với lưu lượng truy cập thấp .
- Các cuộc gọi đồng bộ có thể chậm và không hiệu quả, đặc biệt đối với các ứng dụng lớn có lưu lượng truy cập cao.
- Chúng có thể gây ra các vấn đề về hiệu suất nếu máy chủ mất quá nhiều thời gian để phản hồi.
- Sử dụng cuộc gọi đồng bộ khi ứng dụng có lưu lượng truy cập thấp hoặc tương đối nhỏ.
- Chúng cũng hữu ích cho các ứng dụng mà khách hàng cần chờ phản hồi trước khi tiếp tục bước tiếp theo.

Cuộc gọi không đồng bộ
Các cuộc gọi không đồng bộ là một phương thức thực hiện yêu cầu trong đó ứng dụng khách gửi yêu cầu đến máy chủ và tiếp tục thực hiện các tác vụ khác trong khi chờ phản hồi.
Điều này có nghĩa là ứng dụng khách không bị chặn trong khi chờ phản hồi từ máy chủ.
Ưu điểm:
- Các cuộc gọi không đồng bộ nhanh hơn và hiệu quả hơn các cuộc gọi đồng bộ.
- Chúng rất hữu ích cho các ứng dụng lớn với lưu lượng truy cập cao .
- Các cuộc gọi không đồng bộ phức tạp hơn để thực hiện so với các cuộc gọi đồng bộ.
- Chúng có thể khó gỡ lỗi nếu có lỗi trong yêu cầu hoặc phản hồi.
- Sử dụng cuộc gọi không đồng bộ khi ứng dụng có lưu lượng truy cập cao hoặc tương đối lớn.
- Chúng cũng hữu ích cho các ứng dụng mà khách hàng không cần đợi phản hồi trước khi tiếp tục bước tiếp theo.

Cuộc gọi song song
Các cuộc gọi song song là một phương pháp thực hiện đồng thời nhiều yêu cầu .
Trong các cuộc gọi song song, ứng dụng khách gửi nhiều yêu cầu đến máy chủ cùng một lúc và máy chủ phản hồi từng yêu cầu riêng lẻ.
Ưu điểm:
- Các cuộc gọi song song nhanh hơn và hiệu quả hơn các cuộc gọi tuần tự.
- Chúng rất hữu ích cho các ứng dụng lớn với lưu lượng truy cập cao.
- Các cuộc gọi song song có thể gây ra các vấn đề về hiệu suất nếu máy chủ không được thiết kế để xử lý đồng thời nhiều yêu cầu.
- Chúng cũng có thể gây ra sự cố nếu có sự phụ thuộc giữa các yêu cầu.
- Sử dụng cuộc gọi song song khi ứng dụng có lưu lượng truy cập cao hoặc tương đối lớn.
- Chúng cũng hữu ích cho các ứng dụng mà máy khách cần thực hiện đồng thời nhiều yêu cầu.

Suy nghĩ kết thúc
Vì vậy, khá nhiều việc lựa chọn thực hiện lệnh gọi đồng bộ, không đồng bộ hoặc song song trong API phụ thuộc vào nhu cầu cụ thể của ứng dụng.
Mặc dù các cuộc gọi đồng bộ dễ thực hiện nhưng chúng có thể không phù hợp với các ứng dụng quy mô lớn yêu cầu giao tiếp nhanh và hiệu quả giữa máy khách và máy chủ. Các cuộc gọi không đồng bộ và song song mang lại hiệu suất và khả năng mở rộng tốt hơn, nhưng chúng yêu cầu triển khai nâng cao hơn và có thể có những thách thức riêng.
Điều cần thiết là cân nhắc ưu và nhược điểm của từng phương pháp và xem xét lưu lượng truy cập, kích thước của ứng dụng và loại yêu cầu được thực hiện trước khi chọn một phương pháp cụ thể.
Bằng cách chọn phương pháp thích hợp, các nhóm kỹ thuật có thể đảm bảo rằng API của họ cung cấp hiệu suất, khả năng mở rộng và khả năng đáp ứng tối ưu cho người dùng cuối.