当前位置: 首页 > 知识库问答 >
问题:

API网关模式与聚合器模式(在微服务的上下文中)

贺自明
2023-03-14

我正试图理解API网关和微服务聚合器模式之间的区别。

目前,从我对聚合器模式的理解来看,它是通过从各种微服务收集数据片段并返回一个聚合进行处理来实现的。

现在,API网关是聚合对单个微服务的调用的单一入口点。虽然这听起来可能与聚合器模式非常相似,但也有一些不同的特性。最重要的是,这个新服务不存储数据,而是负责API组合、请求路由和身份验证等新功能

我很想知道我的推理是否正确。

提前谢谢你!

共有1个答案

国阳
2023-03-14

是的,你的理解是正确的。我想补充几个想法:

  • API网关通常是系统的入口点,而聚合器微服务可以位于中间层的某个位置
 类似资料:
  • 让我们说,我正在开发博客平台,用户可以注册帐户,支付订阅和创建自己的博客。平台由以下微服务组成: 帐户-服务 auth-service 订阅-服务 博客-服务 API-网关 我正在考虑实现api-gw模式,其中除了api-gw之外的所有微服务都将部署到专用网络中(在那里,它们将能够通过message broker直接以同步或异步方式相互通信),并且它们将只通过api-gw公开可用。 null 我的

  • 我尝试基于Akka创建一些使用CQRS的微服务。所以我的微服务有Httpendpoint的写端(向集群发送命令)和读端(从数据库读取投影),但这不是主要问题。由于许多微服务,问题出现了为客户端收集复杂的API。我找到了答案:API网关模式。但我还有下一个问题:如何实现它? > < li> 我可以创建单独的项目,该项目将实现API网关模式(在简单的情况下,它是一个反向代理)。完整堆栈将: 赞成的意见

  • 我有以下微服务架构的用例。 我的问题是,在当前情况下,我有3个微服务和一个APIGateway。 最后,网关必须在聚合(合成)来自3个服务的数据之前进行大量查询。因为3个微服务只提供基本的数据集。 请查看图片了解更多详情! 这是一个好的模式吗?还有其他模式吗?

  • 由于各种原因,Emacs 启动比较耗时。可以启动一个 Emacs 的守护进程 emacs --daemon 然后通过 emacsclient 来连接服务器 emacsclient -t --alternate-editor jed file -t 在当前控制台打开 emacs 窗口 --alternate-editor jed 如果不能连接到 emacs 服务器,则使用 jed 编辑器 也可

  • 我试图在HA模式下使用带有spring数据的neo4j嵌入式服务器。我得到类加载错误。我把所有的罐子都放好了。我试图在HA模式下使用带有spring数据的neo4j嵌入式服务器。我得到类加载错误。我把所有的罐子都放好了。