我的团队正在开发微服务 Web 后端。开发人员对部署一无所知,他们只是使用一些 Web 框架(例如 Springboot)来部署服务。部署是由某个组件控制的,就像K8S一样,所以所有的服务都可以在主机之间迁移。
所以我只是想知道是否可以在本地套接字上自动使用 Unix Domain Socket。例如,如果今天服务a
和服务b
部署在同一台主机上,它们将使用 Unix Domain Socket 来相互通信。如果有一天b
被替换,就会使用Unix Domain Socket。否则(服务不在同一主机上),使用公共套接字进行通信。c
a
c
IMO,我需要的是像这样的某种操作系统配置:
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上有这样的配置或者这样的机制吗?