正如单体式应用到 SOA 架构时 ESB 总线的称谓,微服务架构阶段时的微服务网关,K8s 云原生架构下的云原生网关,再到现如今 AI 时代的 AI 网关。可以发现不仅仅是 Higress 如此,传统的 API 网关产品以及国内外的 API 网关云厂商,都非常默契地将自家用户页面的入口换上了 AI 网关的皮肤。按照用户场景,Higress 可以有以下几种定位:
AI 网关
AI 网关相比传统 API 网关有了一些本质的变化:
传统 API 网关
AI 网关
请求响应模型
无流式处理需求,多为 HTTP
流式处理,SSE/Streamable 协议支持
内容感知深度
根据 header/query/path 等部分进行流量转发
支持 OpenAI 协议,多模型协同,提示词改写,可能对流量需要有语义级别的理解
流控差异
Query Per Second
Token Per Second
内容安全
防御 DDos、SQL 注入等攻击手段
防御提示词注入、数据和模型投毒、无限资源消耗等攻击手段
AI 网关伴随 AI 原生架构演进,会提供各类 AI 原子能力和场景化能力,助力企业应用完成智能化升级。同时,随着越来越多 AI 的概念被提出,例如 MCP、A2A,为了解决对应的场景的问题,Higress 也提供了对应的解决方案,在这些场景下我们也可能会称呼 Higress 为 MCP 网关、Agent 网关。
出于安全原因,浏览器限制从页面脚本内发起的跨域请求,有些浏览器不会限制跨域请求的发起,但是会将结果拦截。 这意味着使用这些 API 的 Web 应用只能加载同一个域下的资源,除非使用 CORS 机制(Cross-Origin Resource Sharing 跨源资源共享)获取目标服务器的授权来解决这个问题。
Spring Cloud Gateway 是 Spring Cloud 微服务生态下的网关组件,一直以来备受 Java 社区的用户关注,很多企业选择使用其作为微服务网关或者业务网关。在阿里云上,也不乏有很多网关类型的产品供用户使用,例如 API Gateway 和 MSE Higress,使用 PaaS 化的方式提供网关能力,用户不再需要关注网关的实现,直接获得开箱即用的能力。在从前,用户只能选择自建 Spring Cloud Gateway,或者购买云产品,而今天介绍的 EDAS 增强 Spring Cloud Gateway 的新姿势,给用户提供了一个新的选择。
让 Spring Cloud Gateway 生产可用
开源 Spring Cloud Gateway 存在一些让企业级用户担忧的因素,包括内存泄漏问题,以及路由设计问题,EDAS 根据云服务总线 CSB 多年沉淀下来的 Spring Cloud Gateway 使用经验,对诸多已经存在的问题进行了治理,对诸多的风险因素也进行了规避,彻底打消用户使用 Spring Cloud Gateway 技术侧的顾虑。
org.springframework.data.redis.RedisSystemException: Error in execution; nested exception is io.lettuce.core.RedisCommandExecutionException: READONLY You can't write against a read only replica.