-
Notifications
You must be signed in to change notification settings - Fork 1.4k
如何快速规避使用上的坑
HaojunRen edited this page May 31, 2024
·
3 revisions
- 在配置文件(application.properties、application.yaml等)里,定义服务名(spring.application.name)不区分大小写,但强烈建议小写
- 在规则文件(Xml、Json)里,涉及的服务名必须小写
- 在传递的n-d-开头的参数(Header、Parameter和Cookie)里,涉及的服务名必须小写
- 在Nacos、Apollo、Consul、Etcd、Redis、Zookeeper等远程配置中心的Key,涉及的服务名必须小写
上述服务名大小写规则,适用于所有文档
规则策略配置和业务配置没有任何关系,两者基于不同的底层而实现的
- 规则策略配置基于Nacos Client底层而扩展,用法非常简单,如果网关名或者服务名叫a-service,元数据组metadata.group=b-group,对应到Nacos配置中心,该配置的DataId为a-service,Group=b-group
- 业务配置基于如下依赖而进行,Nepxion Discovery默认并没有引入如下依赖,需要使用者自行引入,用法非常丰富,使用上在集成Nepxion Discovery前后无任何差异
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
极简版指南示例,分支为6.x.x-simple,提供的代码,需要注意如下逻辑
- 网关支持任何自定义业务的Header传入,但缺省默认拒绝前端n-d-xxx的Header传入,该设计的初衷是在生产环境下,前端人员可能并不了解后端服务部署的情况,由前端管控后端服务蓝绿灰度发布,存在一定的风险,故默认关闭,只能通过在配置中心配置规则策略的方式来实施。如果希望接受n-d-version传入,用法请参考如何设置全链路蓝绿灰度发布由前端或者网关来执行
- 最佳做法是业务的Header通过配置中心配置的规则策略,转化成n-d-xxx的Header,进行全链路传递
2017-2050 ©Nepxion Studio Apache License
- 如何对接Foundation基础平台实施收敛集成
- 如何对接DevOps运维平台实施流量管控
- 如何部署对接DevOps运维平台的控制台
- 如何对接DevOps运维平台执行半自动化蓝绿灰度发布
- 如何使用DevOps运维平台对接的公共接口
- 如何设计全链路智能编排高级蓝绿灰度发布界面
- 如何实现Windows10下GraalVM本地镜像化
- 蓝绿灰度发布
- 流量染色
- 隔离路由
- 故障转移
- 多活单元化
- 限流熔断降级权限
- 网关动态路由
- 可观测监控
- 如何操作配置中心
- 如何理解框架开关配置
- 如何理解规则策略里内容格式配置
- 如何操作网关和服务的蓝绿灰度发布规则策略配置
- 如何操作网关动态路由规则策略配置
- 如何操作Sentinel规则策略配置
- 如何实施规则策略配置和业务配置在配置中心的合并和分离
- 如何理解自动扫描目录
- 如何自定义流量管控
- 如何自定义实现组合式的防护
- 如何自定义高级配置订阅功能
- 如何自定义订阅框架事件
- 如何自定义解决业务自身跨线程上下文切换的问题
- 如何自定义重用框架内置的Swagger模块
- 如何自定义Header全链路传递
- 如何遵循Nepxion Discovery网关标准实现对其它网关全链路流量管控的二次开发
- 如何遵循Nepxion Discovery服务标准实现对消息队列等其它中间件全链路流量管控的二次开发