새 프로젝트의 경우 파이썬에서 다중 구성 요소 백엔드를 설계해야합니다. 처음에는 비즈니스 규칙 서버와 브라우저에서 들어오는 요청을 처리 할 프론트 엔드의 두 가지 기본 구성 요소가 있습니다.두 서버가 어떻게 통신해야합니까?
|--------------------|
Business API
|--------------------|
||
||
||
|--------------------|
Front server
|--------------------|
이 시스템에 더 많은 기능이 추가되면서 Business API에 연결하는 서버/구성 요소를 추가해야 할 수도 있습니다.
지금, (많은 연구를 거친 후) 직렬화/직렬화를 위해 MessagePack에 정착했습니다.
내가 결정할 수없는 것은 통신이 이루어져야하는 전송 (유선 프로토콜)이어야한다는 것입니다. -하지만 어떻게해야
- 원시 TCP/IP 소켓
내가 HTTP로 시작하는 좋은 선택이 될 것입니다 생각
on one end
[actual message] -> [msgpack encode] -> [base64 encode]
on the other end
[base64 decode] -> [msgpack decode] -> [actual message]
은 서로 다른 구성 요소 사이에 계속 수다를 많이 거기 시스템이 만족할 만합니까? 더 나은 해결책이 있습니까? http를 통해 더 좋은 방법이 있습니까?
참고 : 바이너리 데이터를 전송해야하므로 일반 JSON을 사용할 수 없으므로 직렬화 라이브러리가 msgpack이됩니다.
http는 모든 유형의 데이터를 전송할 수 있습니다. base64로 인코딩 할 필요가 없습니다. – Hazzit