适应多样化需求:WASM 插件在全链路灰度发布中的应用

💡 原文中文,约5100字,阅读约需12分钟。
📝

内容提要

根据调研数据显示,约70%的生产故障是由变更引起的。为了消除变更过程存在的风险,在发布过程中,我们希望能够用小部分特定流量来验证新发布应用是否正常。微服务架构下的全链路灰度能够满足这一需求。MSE在微服务全链路灰度场景下提供了一套成熟完善且开箱即用的能力。如果遇到复杂场景,可以使用云原生网关WASM插件来满足需求。WASM插件是一种可移植、高性能的二进制指令集,可以满足各种全链路灰度的需求。通过编写WASM插件,可以实现根据特定Header的参数比例需求。通过WASM插件,可以实现根据用户标识、地理位置、流量比例、请求包复杂属性等进行全链路灰度。

🎯

关键要点

  • 约70%的生产故障是由变更引起的。
  • 微服务架构下的全链路灰度能够用小部分特定流量验证新发布应用的正常性。
  • MSE在微服务全链路灰度场景下提供成熟的开箱即用能力。
  • MSE支持按照内容规则与百分比规则的灰度路由策略。
  • 复杂场景下,MSE的策略可能无法满足需求。
  • 云原生网关WASM插件是一种可移植、高性能的二进制指令集,用于扩展功能。
  • WASM插件支持多语言扩展,提供灵活性和可扩展性。
  • MSE插件市场提供默认插件,提升网关的安全与稳定性。
  • WASM插件运行在沙箱环境中,确保对整体性能的最小影响。
  • 通过WASM插件可以实现根据用户标识、地理位置、流量比例等进行全链路灰度。
  • WASM插件可以根据特定Header的参数比例需求进行灰度路由。
  • 可以根据用户身份、角色、权限等信息进行个别用户的全链路灰度。
  • 可以根据用户地理位置信息进行特定地区的全链路灰度。
  • 可以根据流量比例将请求路由到不同的灰度环境。
  • WASM插件不适合处理需要对接数据库或多线程的逻辑。
🏷️

标签

➡️

继续阅读