Simple Object Access Protocol (SOAP) là một giao thức giúp trao đổi thông tin giữa các hệ thống và ứng dụng doanh nghiệp phân tán (distributed enterprise systems/applications).
Chúng ta thường sử dụng SOAP khi xây dựng các API dựa trên các thông điệp1. Trong khi đó, kiến trúc REST được sử dụng để xây dựng các API dựa trên các tài nguyên.
Một số tính chất của SOAP:
- Ngoài HTTP, SOAP API còn có thể được triển khai ở trên các giao thức khác, chẳng hạn SMTP, TCP hoặc UDP.
- Các thông điệp có định dạng là XML.
- Cung cấp nhiều hướng dẫn hơn về cấu trúc của request và response cũng như là nội dung của message và cách nó được encode.
Benefits of Using SOAP APIs
Các lợi ích khi sử dụng SOAP API:
- Độc lập ngôn ngữ, cách thức vận chuyển (transport)2 và nền tảng.
- Bảo mật, phù hợp cho các hệ thống có chứa các dữ liệu nhạy cảm chẳng hạn như các dịch vụ tài chính hoặc các ứng dụng ngân hàng.
- Hoạt động tốt trong môi trường doanh nghiệp phân tán và không bị phụ thuộc vào kết nối point-to-point3.
- Có sẵn các tính năng xử lý lỗi.
SOAP API Disadvantages
Một số điểm bất lợi khi sử dụng SOAP API:
- Không hỗ trợ cache.
- Phức tạp hơn REST, dẫn đến giảm hiệu năng.
- Khó tiếp cận hơn REST.
- Chậm hơn REST.
SOAP API Use Cases
Các use case của SOAP API:
- Giao dịch ở các ngân hàng: cần gọi đến nhiều web service và yêu cầu độ bảo mật cao.
- Đặt vé máy bay: cũng cần phải gọi đến nhiều web service.
- Các dịch vụ hóa đơn: thông tin hóa đơn thường chứa nhiều thông tin nhạy cảm.
- Các công ty điều hướng: cần sự kết hợp của nhiều thông tin từ nhiều nguồn để tính toán đường đi tốt nhất.
Related
list
from [[SOAP]]
sort file.ctime asc