一、要做一个网关服务的架构
网关具备哪些功能
- 隔绝网站应用服务与外部服务商应用的直接访问
- 限流
- 限定访问,ip、域名、请求等非法信息拦截
- 日志记录
- 不会因为业务增加而导致网关系统重启
二、要怎么设计
系统职责简述
- 业务系统:产品模型功能实现
- 网关系统:路由服务
- 第三方系统:提供与服务商系统之间的数据处理、通信处理等服务
- 服务商系统:提供产品线中所需的服务
方案
1、业务系统调用网关系统,由网关系统决策路由到第三方系统并做数据的处理,再由网关系统路由到服务商系统。
优点:业务系统只需调用网关系统,更关心需要的服务,而不关心哪些系统可以提供服务
缺点:网关系统扮演了决策部分,技术更新替换难度较大
2、业务系统决策调用第三方系统,由第三方系统做数据处理后,调用网关系统路由到服务商系统
优点:网关系统单一职责,可替换性强
缺点:业务系统需要决策调用第三方系统
技术选型
业务系统spring-cloud,网关系统spring-cloud-gateway,第三方系统建议不强制使用spring-cloud框架。