微服务的无状态、版本控制向后兼容、流量整型

如何理解微服务的无状态化:

单机Session 如果代码逻辑依赖SessIon中的某个kv 就是有状态的

如果将Session中的kv放在 redis 就成了无状态服务

应用无状态 在线服务扩容或者迁移时 业务不受影响

配置管理有状态, 不同配置文件参数值不同

如何通过接口版本向后兼容:

controller接口使用v1 v2 v3标记 某个功能的扩展时使用

如果是RPC 就用 version属性来控制

还可以用请求头参数在网关层转到对应版本的接口

可用性的保障手段流量整型:

令牌桶:

令牌是算法生成的通行证

令牌是从桶里拿出来的

桶就是一个冷宫 桶是有容量

容量满了令牌就被流放了 相当于直接返回请求

容量没满就放到桶里

不同接口令牌数不同,令牌越多 权益越重

漏桶 :

请求放在桶里

桶满了请求丢弃

桶是匀速流出请求

相关推荐
西陵20 分钟前
前端框架渲染DOM的的方式你知道多少?
前端·javascript·架构
hsg774 小时前
基于nacos2.5.1的MCP服务端微服务项目开发环境配置简介
微服务·云原生·架构
DemonAvenger4 小时前
减少内存分配:Go中值类型与指针类型的选择
性能优化·架构·go
xzh4 小时前
问题:Nginx client_body_temp_path 文件会删除吗,删除时机?
nginx·架构
hstar95275 小时前
三十三、面向对象底层逻辑-SpringMVC九大组件之HandlerExceptionResolver接口设计
java·spring·设计模式·架构
互联网搬砖老肖5 小时前
Web 架构之 CDN 加速原理与落地实践
前端·架构
白熊1887 小时前
【推荐算法】DeepFM:特征交叉建模的革命性架构
算法·架构·推荐算法
李明卫杭州8 小时前
UML中用例图的绘制
架构·uml
jakeswang10 小时前
StarRocks
后端·架构
未来影子10 小时前
SpringAI(GA):SpringAI下的MCP源码解读
人工智能·架构·ai编程