API 网关在微服务风格的架构中总是必需的吗?
Are API Gateways always necessary in a Microservice styled architecture?
我在网上看到 API 网关成为客户端请求的入口点的例子。 API 网关在微服务风格的架构中总是必需的吗?
简答 IMO:否。
微服务甚至可能 没有 API。例如,它可以是预定的作业处理器。它可以启动,也许每晚运行并做一些工作。没有API.
关于微服务的建议阅读(旧但不错):http://martinfowler.com/articles/microservices.html
不 - 这不是先决条件,即使您有使用它们的客户端应用程序也是如此 - 但恕我直言,这是个好主意。
就概念而言,微服务架构确实不是什么新鲜事。将您的整体应用程序分解为许多组件,这些组件可以按照自己的开发速度快速迭代。云原生工具和最佳实践通过容器等技术和代码即配置等最佳实践带来了 "microservices" 这一新概念。
对于具有广泛客户端功能的客户端消费,使用网关可以更轻松、更实际地管理微服务,因为网关是一种基础架构,充当安全、节流、缓存等 QoS 问题的控制点, payload pagination, lightweight transformation, tracebacks through header injection, etc.
这不是必需的,但实际上,如果您已经将微服务开发过程作为云就绪基础设施的一部分融入到您的微服务开发过程中 - 您可以在开发考虑期间解决这些问题,而不是事后 "big bang" 时尚- 在过去,devop/ops 的人要解决这个问题是一个巨大的负担。这是一个负担,这就是为什么我们开始了自己的解决方案,将微服务开发集成与云原生平台下的管理相结合,并拥有市场
我在网上看到 API 网关成为客户端请求的入口点的例子。 API 网关在微服务风格的架构中总是必需的吗?
简答 IMO:否。
微服务甚至可能 没有 API。例如,它可以是预定的作业处理器。它可以启动,也许每晚运行并做一些工作。没有API.
关于微服务的建议阅读(旧但不错):http://martinfowler.com/articles/microservices.html
不 - 这不是先决条件,即使您有使用它们的客户端应用程序也是如此 - 但恕我直言,这是个好主意。
就概念而言,微服务架构确实不是什么新鲜事。将您的整体应用程序分解为许多组件,这些组件可以按照自己的开发速度快速迭代。云原生工具和最佳实践通过容器等技术和代码即配置等最佳实践带来了 "microservices" 这一新概念。
对于具有广泛客户端功能的客户端消费,使用网关可以更轻松、更实际地管理微服务,因为网关是一种基础架构,充当安全、节流、缓存等 QoS 问题的控制点, payload pagination, lightweight transformation, tracebacks through header injection, etc.
这不是必需的,但实际上,如果您已经将微服务开发过程作为云就绪基础设施的一部分融入到您的微服务开发过程中 - 您可以在开发考虑期间解决这些问题,而不是事后 "big bang" 时尚- 在过去,devop/ops 的人要解决这个问题是一个巨大的负担。这是一个负担,这就是为什么我们开始了自己的解决方案,将微服务开发集成与云原生平台下的管理相结合,并拥有市场