
전문이란 통신에 참여하는 애플리케이션들이 주고 받을 데이터 포맷을 서로 약속한 후, 약속된 데이터 패킷을 전송하고 수신하는 것을 말합니다. 한마디로 데이터를 주고 받는 방식입니다.
전문 통신은 주로 금융권과 같은 특정 산업에서 사용되는 데이터 교환 방식입니다. 시스템의 통신을 위해 고도로 맞춤화된 형식을 사용하며 보통 바이너리(binary) 형태의 데이터 구성됩니다.
고정 길이 또는 구조화된 바이너리 데이터를 사용하여 데이터를 교환하며 각 데이터 필드는 사전에 정의된 길이와 형식을 가집니다. 클라이언트 <-> 서버의 약속된 형식을 통해 데이터의 해석이 명확하게 이루어질 수 있습니다.
통신 방법은 주로 Socket을 사용하며 TCP/IP 기반으로 작동합니다.
전문 통신에서의 핵심은 패킷을 정의하고 해당 데이터 패킷을 애플리케이션이 주고 받아 패킷의 포맷에 맞춰 생성 또는 해석하게 되며 이런 과정을 통해 클라이언트 <-> 서버간의 통신을 이루는 것이라고 할 수 있습니다.
결제처럼 핵심적인 비즈니스 로직의 변화가 거의 없는 경우에는 전문통신 방법이 적절하다고 생각됩니다. 하지만 일반적인 클라이언트 <-> 서버 통신에서는 변경 사항도 많고 추가되어야 하는 기능들도 많을 수 있으므로 REST API를 사용하는게 좋아 보입니다.