Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- 정보처리산업기사
- 데이터베이스
- 자바
- 파이썬배열예제
- 안드로이드스튜디오
- 업다운게임코드
- 파이썬리스트
- androidstudio
- 코딩공부
- 운영체제목적
- It
- 스누핑
- 정처기
- 정처기운영체제
- 운영체제종류
- 백준
- 파이썬
- 자바예제
- 바텀네비게이션
- 코딩
- int크기
- java
- 정처산기
- 컴퓨터일반
- bottomnavigation
- 파이썬예제
- 안드로이드
- 파이썬배열
- ai
- 프로그래밍
Archives
- Today
- Total
발전을 위한 기록
[SQA] API 구조별 4가지 유형과 차이점 한눈에 보기 | SOPA, RPC, WebSocket, REST 본문
728x90
📌 API란?
Application Programming Interface
응용 프로그램이 서로 데이터를 주고받을 때 사용하는 인터페이스입니다.
예) 모바일 앱 ↔ 서버 / 웹 서비스 ↔ 데이터베이스 등
✅ 대표적인 API 종류 4가지
1️⃣ SOAP API (Simple Object Access Protocol)
🔍 특징
- XML 기반으로 데이터를 주고받는 프로토콜
- 엄격한 표준화된 메시지 포맷 사용
- HTTP, SMTP 등 다양한 프로토콜 위에서 동작
- 보안, 트랜잭션 처리 등 Enterprise급 기능 지원
💡 장점
- 높은 안정성, 보안성
- 표준 기반으로 다양한 플랫폼 간 호환성 높음
⚠️ 단점
- XML 기반이라 메시지 구조가 무겁고 복잡
- 속도는 REST보다 느린 경우 많음
✅ 예시 활용
- 금융 서비스 API
- 정부기관/대기업 시스템 간 연동
2️⃣ RPC API (Remote Procedure Call)
🔍 특징
- 원격 프로시저 호출 방식
- 마치 로컬 함수를 호출하듯, 원격 서버의 함수를 호출
- 요청(request)은 함수명 + 파라미터, 응답(response)은 결과 값
- SOAP-RPC / JSON-RPC / gRPC 등 구현 방식 다양
💡 장점
- 단순하고 빠름 (경량화된 구조)
- 특정 서비스/마이크로서비스 간 통신에 적합
⚠️ 단점
- 느슨한 표준 → API 설계 일관성 부족 가능성
- 버전 관리나 공개 API보다는 내부 시스템 용도로 주로 사용
✅ 예시 활용
- gRPC 기반 마이크로서비스 간 통신
- 내부 시스템, 서버-서버 간 데이터 처리
3️⃣ WebSocket API
🔍 특징
- 양방향 통신(Full Duplex) 지원
- 서버와 클라이언트가 항상 연결된 상태 유지 가능
- 연결 지연 없음 → 실시간 데이터 전송에 최적화
- HTTP Upgrade 요청으로 연결을 시작한 후, WebSocket 프로토콜 사용
💡 장점
- 빠른 실시간 데이터 송수신 가능 (채팅, 게임 등)
- 서버 Push 기능 사용 가능
⚠️ 단점
- 상태 유지 필요 (연결 유지 비용 발생)
- HTTP 기반이 아니므로 프록시/방화벽 등 제약 있을 수 있음
✅ 예시 활용
- 실시간 채팅 서비스
- 게임 서버 통신
- 주식 시세 실시간 업데이트
4️⃣ REST API (Representational State Transfer)
🔍 특징
- HTTP 기반의 가장 널리 사용되는 API 스타일
- 데이터 전송에 JSON, XML, TEXT 등 유연하게 사용 가능 (최근엔 JSON 사용이 일반적)
- HTTP 메서드 (GET, POST, PUT, DELETE 등) 활용
💡 장점
- 가볍고 빠른 통신 가능
- 구조가 단순하여 개발/유지보수 용이
- 웹/모바일 서비스에서 거의 표준처럼 사용
⚠️ 단점
- REST 자체는 명확한 프로토콜이 아닌 스타일 가이드 수준
- 복잡한 트랜잭션 처리에는 SOAP보다 부족할 수 있음
✅ 예시 활용
- 대부분의 웹/모바일 서비스 API (네이버, 카카오, 구글 등)
- 공공 API
- 오픈 API 플랫폼
이번 글에서는 API 구조별 4가지 유형(SOAP, RPC, WebSocket, REST)에 대해 한눈에 정리해보았습니다.
실무에서 API를 설계하거나 테스트할 때 이번 내용을 참고하면 많은 도움이 될 것입니다! 🚀
728x90
'SQA' 카테고리의 다른 글
[SQA] API 유형별 4가지 종류와 차이점 정리 | Private / Public / Partner / Composite API (2) | 2025.06.06 |
---|