大模型 API 又贵又不稳定:超时、限流、偶尔抽风。把直接调用藏在内部网关后面,是让业务方安心使用的关键一步。
网关要做四件事:令牌桶限流、失败重试与指数退避、多模型路由(主模型挂了自动 fallback)、以及统一的成本与延迟埋点。用 Spring WebFlux 的响应式栈扛并发,比传统 Servlet 线程模型更适合这种 IO 密集场景。
return gateway.route(req)
.onErrorResume(TimeoutException.class, e -> fallback.call(req))
.delayElement(Duration.ofMillis(20));
把不稳定又昂贵的外界依赖,抽象成内部可控的稳定接口——这就是网关存在的全部意义。