开发者社区> 问答> 正文

微服务、API 网关、集中中心,这些都会遇到耦合的设计,在不同场景下,耦合级别会有什么样的差别?

微服务、API 网关、集中中心,这些都会遇到耦合的设计,在不同场景下,耦合级别会有什么样的差别?

展开
收起
OSC开源社区 2024-06-13 08:01:38 21 0
1 条回答
写回答
取消 提交回答
  • 可以举两个例子,一个是服务注册发现,一个是 API 网关。

    服务注册发现只是将服务名称和物理 IP 地址强绑定,通过建立一层抽象映射给它解耦开来。这是我们认为比较合理的方式。

    而 API 网关,理想的情况下,我们应该只是做一些横切层的处理,比如说是做一些 API 认证、授权、限流这样的功能。

    但是在现实生活中,人们往往会往 API 网关中添加太多职责。其中的驱力动往往是一些厂商为了去卖自己的 API 网关产品,往往把 API 网关的功能做的很强大,甚至包含了智能路由业务逻辑编排等。这可能会引诱开发团队,把更多的业务逻辑和代码放到 API 网关里实现,形成对 API 网关产品的锁定。

    这个时候就形成了我们说的一个反模式,叫做 Over ambitious API Gateway,它其实反而会增加复杂度带来不必要的耦合。

    2024-06-13 17:35:17
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Spring Boot2.0实战Redis分布式缓存 立即下载
CUDA MATH API 立即下载
API PLAYBOOK 立即下载