0

简单的问题:假设我有几个后端微服务,它们只能由应用程序软件访问,最好的做法是:

  1. 将应用软件直接指向一个 IP 地址?或者
  2. 为服务分配子域?

我的假设是 (1) 避免 DNS 查找延迟,而 (2) 如果 IP 发生变化,则更容易更新系统。还有什么影响这个吗?

4

1 回答 1

1

分配子域或直接使用 IP 地址访问不是可扩展的方法。

我建议,将您的客户端应用程序软件指向一个 API 网关,这将是这些微服务的单一入口点,并且应该有一个服务发现机制,以便 API 网关可以访问这些单独的微服务。

请参考以下示例图。

在此处输入图像描述

  1. 客户端应用程序从特定服务请求数据并到达 API 网关
  2. API 网关向发现服务器请求该特定服务的最新可访问地址
  3. 发现服务正在返回最新的可访问地址
  4. API 网关使用从发现服务器获得的地址来访问客户端请求的资源的特定服务。
  5. 所有微服务都应该在发现服务器启动时注册。
于 2020-09-26T23:34:21.357 回答