要知道,采用微服务架构的系统本身是由很多的独立服务单元组合起来的。而客户端要调用系统,则必须通过系统提供的各种对外开放的 API 来实现。
微服务不能没有网关,就如同 Java 程序员不能没有IDEA、Eclipse。为什么呢?
之所以网关对微服务这么重要,主要有以下几点原因:
1. 解决 API 放哪里的问题
要知道,采用微服务架构的系统本身是由很多的独立服务单元组合起来的。而客户端要调用系统,则必须通过系统提供的各种对外开放的 API 来实现。
问题来了,这些 API 要放在哪里呢?直接放在组成系统的服务单元上行不行?
比如,在一套电商系统上,关于订单相关的 API ,放在组成订单服务的服务单元上;风控服务的 API ,放在组成风控服务的服务单元上。