우리 팀은 마이크로서비스 웹 백엔드를 개발 중입니다. 개발자는 배포에 대해 아무것도 모르고 서비스를 배포하기 위해 일부 웹 프레임워크(예: Springboot)만 사용합니다. 배포는 K8S와 마찬가지로 구성 요소에 의해 제어되므로 모든 서비스를 호스트 간에 마이그레이션할 수 있습니다.
그래서 로컬 소켓에서 Unix 도메인 소켓을 자동으로 사용할 수 있는지 궁금합니다. 예를 들어, 오늘날의 서비스 a
와 서비스가 b
동일한 호스트에 배포된 경우 Unix 도메인 소켓을 사용하여 서로 통신합니다. 언젠가 교체 되면 b
Unix Domain Socket이 사용됩니다. 그렇지 않으면(서비스가 동일한 호스트에 있지 않음) 통신에 공용 소켓을 사용하십시오.c
a
c
IMO, 나에게 필요한 것은 다음과 같은 일종의 OS 구성입니다.
config = kernel.read(some_config)
sk = kernel.get_socket(some_socket)
if (config == 1 and sk.destination_ip == 127.0.0.1) {
sk uses Unix Domain Socket to do the communication
} else {
sk uses common socket to do the communication
}
Linux에 그러한 구성이나 메커니즘이 있습니까?