我们仍然关注在中间件中实现的业务逻辑和流程编排,特别是在创建可伸缩和控制的单点时需要专业技能和工具的地方。在竞争激烈的API网关市场上,供应商们通过增加特性来试图区分他们的产品,从而延续了这一趋势。这将导致过于雄心勃勃API网关产品的功能——在本质上是反向代理之上——鼓励设计继续难以测试和部署。API网关确实提供了处理某些特定问题的实用工具——比如身份验证和速率限制——但任何域智能都应该存在于应用程序或服务中。
我们经常抱怨的一个问题是在中间件中实现的业务智能,导致传输软件雄心勃勃地运行关键的应用程序逻辑。在竞争激烈的API网关市场上,供应商不断地增加使其产品与众不同的特性。这将导致过于雄心勃勃API网关产品的功能(在本质上是反向代理之上)鼓励难以测试和部署的设计。API网关可以提供处理一些通用问题的实用工具(例如,身份验证和速率限制),但任何领域的智能(如数据转换或规则处理)都应该存在于应用程序或服务中,在这些应用程序或服务中,可以由与其支持的领域密切合作的产品团队进行控制。
我们经常抱怨的一个问题是将业务智能推入中间件,导致应用服务器和企业服务总线雄心勃勃地运行关键的应用程序逻辑。这些要求在不适合的环境中进行复杂的编程。我们看到这种疾病再次出现,令人担忧过于雄心勃勃API网关产品。API网关可以提供实用程序在处理一些通用的问题——例如,身份验证和病原——但任何域智慧,比如数据转换或规则处理应该生活在应用程序或服务,他们可以由产品团队密切合作与他们支持的领域。