在阿里,我们如何管理测试环境(11)
咋看起来 , 这不就是动态修改域名对应的路由地址、或者消息主题对应的投递地址么?实事并没那么简单 , 因为不能为了某个特性环境而修改公共基础环境的路由 , 所以单靠正统路由机制只能实现单向目标控制 , 即特性环境里的服务主动发起调用能够正确路由 , 若请求的发起方在公共基础环境上 , 就无法知道该将请求发给哪个特性环境了 。 对于HTTP类型的请求甚至很难处理回调的情况 , 当处于公共基础环境的服务进行回调时 , 域名解析会将目标指向公共基础环境上的同名服务 。
如何才能实现数据双向的正确路由和投递呢?不妨先回到这个问题的本质上来:请求应该进入哪个特性环境 , 是与请求的发起人相关的 。 因此实现双向绑定的关键在于 , 识别请求发起人所处的特性环境和进行端到端的路由控制 。 这个过程与“灰度发布”很有几分相似 , 可采用类似的思路解决 。
得益于阿里在中间件领域的技术积累 , 和鹰眼等路由追踪工具的广泛使用 , 识别请求发起人和追溯回调链路都不算难事 。 如此一来 , 路由控制也就水到渠成了 。 当使用特性环境时 , 用户需要“加入”到该环境 , 这个操作会将用户标识(如IP地址或用户ID)与指定的特性环境关联起来 , 每个用户只能同时属于一个特性环境 。 当数据请求经过路由中间件(消息队列、消息网关、HTTP网关等) , 一旦识别到请求的发起人当前处在特性环境中 , 就会尝试把请求路由给该环境中的服务 , 若该环境没有与目标一致的服务 , 才路由或投递到公共基础环境上 。
推荐阅读
- 小鱼人|如何在新赛季稳定上分?善于抓失误的小鱼人,值得认真练上一波
- 阴阳师|阴阳师SR川猿强度如何 是否值得抽卡 改变斗技环境 大佬的新玩具
- 手机游戏|梦幻西游手游:活力如何换金币 一切都已给出 就看你的选择
- 华佗|三国杀:两位\奶爸\,朱治与华佗比,强度如何呢?
- 亲朋上分|《亲朋上分》266391亲朋下分亲朋上下分永劫无间崔三娘技能介绍 崔三娘如何获得更多技能
- lpl|不着急“武统”,可不是因为不敢:恰恰证明我们是更强势的一方
- s6|金铲铲之战:S6双城传说如何才能快速上手?基础知识很关键
- |冰雪传奇:平民玩家四转后如何打金
- 电子竞技|世界赛结束了,细说那些年我们追过的电竞小说
- 穿越火线|CF:传说武器再度上新,那王者、炫金该如何发展?