SpringCloud集成Gateway+聚合knief4j+nacos
Ngix下载、安装。使用:正向代理、反向代理、负载均衡。常用命令和配置文件
nginx网关与gateway网关的区别 介绍流量网关和业务网关的区别
gateway的主要功能有,路由,断言,过滤器,利用它的这些特性,可以做流控。
nginx做网关,更多的是做总流量入口,反向代理,负载均衡等,还可以用来做web服务器。
SpringCloudGateway+Nginx实现反向代理和负载均衡 图示说明正方向代理和Nginx.conf
SpringCloud-微服务入门之Gateway+Nginx 介绍Gateway配置和过滤器较详细,并简单介绍了Gateway+Nginx实现高可用
一文读懂网关概念+Nginx正反向代理+负载均衡+Spring Cloud Gateway(多栗子) 介绍Gateway和Ngix较全面
Nginx&SpringCloudGateway进行请求限流
GateWay简介:https://www.cnblogs.com/xfeiyun/p/16222605.html
springcloud之gateway服务网关 介绍得比较详细,包含路由配置、动态路由,maven依赖等
spring cloud gateway使用 uri: lb://方式配置时,服务名的特殊要求 java命名规范中可以使用的英文下划线("_")不能被识别,而我命名为:brilliance_consumer,刚好带下划线,改为brilliance-consumer后则可以正常通过网关访问自己项目。
整合knife4j实现网关聚合接口文档:https://blog.csdn.net/qq_43437874/article/details/121647923 支持动态路由,原理是添加OpenAPI Server
Spring Cloud Gateway +knife4j 聚合所有的Swagger微服务文档:https://blog.csdn.net/qq_37151886/article/details/122176509 需要配置网关路由
springcloud-gateway 聚合swagger3请求接口丢失appliactionName解决:https://blog.csdn.net/leilei1366615/article/details/124994022 解决聚合后,从网关调用swagger丢失basePath的问题。
上面方法引入解决basePath丢失后,会引起application/json数据类型参数示例丢失,解决方法:包含重复对象引用($ref)json解析
//Feature.DisableSpecialKeyDetect:禁用特殊字符检查 JSONObject jsonObject = JSON.parseObject(jsonStr, Feature.DisableSpecialKeyDetect); // 填充bathPath jsonObject.put(BASE_PATH,basePath);
其他参考资料:解析json对象出现$ref: "$.list[0]"的解决办法 JSONObject出现重复引用$ref Java——》fastjson之SerializerFeature详解
API 入门(10)OpenAPI 服务器:https://www.jianshu.com/p/1325d45a9bd9
keife4j项目代码:https://gitee.com/xiaoym/knife4j
https://xiaoym.gitee.io/docs/oas
knife4j v2.0 用户指南 Swagger字段属性说明不显示
暂未实现中文分组名,代替ApplaicationName