腾讯开源业界首个云原生标准的一站式微服务管理框架Femas( 二 )


SDK/AGENT支持控制面插件化 , SDK支持控制面的数据下发的扩展 , 例如默认支持PaaS平台的http协议下发;也可以扩展支持K8s的XDS协议下发规则 。
支持脱离控制面单独使用 , SDK支持在应用本地的YAML格式的规则配置 。
腾讯开源业界首个云原生标准的一站式微服务管理框架Femas
文章图片

Femas功能概览
腾讯开源业界首个云原生标准的一站式微服务管理框架Femas
文章图片

Femas能力概览
Femas完成了对企业级的微服务架构能力矩阵的标准定义 , 主要包含四大功能特性:

  • 注册中心管理
  • 服务治理
  • 服务可观测
  • 配置管理
  • 分布式任务调度
  • 分布式事务
  • 全链路灰度
  • 其他微服务运行时能力
Dapr作为目前一款比较火热的多运行时框架 , Femas和Dapr主要有两大不同:
  1. Femas更注重能力的结合 , 比起每个能力独立的使用 , Femas更希望从微服务的视角 , 去连接起这部分能力 。 以微服务为对象 , 可观测为基石将应用运行时需要用到的能力可视化的展现出来 , 从而更好的理解和管理微服务架构 。
  2. Dapr本身制定了一套自己的标准 , Femas虽然也有自己的定义 , 但是两者最大的区别在于使用Dapr需要用户在业务上进行代码的改动 , 而Femas通过良好的抽象 , 通过很轻量的方式去适配各个RPC框架 , 从而做到用户不需要改动业务代码 , 既可以使用多运行时带来的优势 。
Femas架构设计
目前 , 腾讯微服务平台的企业用户体量非常庞大 , 而且在持续增长 , 在帮助企业数字化上云的过程中 , 遇到了很多的挑战 , 本着服务全球开发者的愿景 , 我们不断的思考如何用合理的架构去解决这些痛点 。
标准化、模块化
微服务的中间件生态非常的复杂 , 每个能力领域都有多个厂商提供的组件 , 缺乏统一的业界共识标准 , 例如注册发现有北极星PolarisMesh、Consul等 , 消息队列有Pulsar、Kafka等 , 各个基础组件像一座座数据孤岛 , 各个基础组件的控制面无法互联让用户的体验非常割裂 , 业务开发需要对接、升级基础组件 , 无形中增加了基础架构和业务开发间的沟通协作成本 , 使得企业整个技术生态陷入维护成本高昂的困境 , 因此需要一个稳定合理的软件架构系统去管理调度这些纷繁复杂的基础设施 , 终结低效、割裂的用户体验 。
腾讯开源业界首个云原生标准的一站式微服务管理框架Femas
文章图片

架构方便、快速迭代升级也是云原生架构的重要价值之一 , 但传统中间件使得业务系统跟基础设施强耦合 , 设想如果基础能力需要升级 , 像全链路灰度、多活等需要联动全局的能力 , 则需要推动整个业务配合升级 , 其中成本可想而知 , 基础能力的轻量化、可移植、无厂商依赖也是个非常重要的考量目标 , 基础设施维护人员和业务开发人员应该各司其职 , 业务不应该过多关注基础设施细节 , 传统中间件因为自身存在的局限性 , 这些问题都不能很好的解决 。
基于传统组件面临的种种问题 , Red Hat首席架构师Bilgin Ibryam对云原生领域的微服务架构发展提出了Multi-Runtime的理念 。
Runtime作为理论的出发点 , Bilgin Ibryam提出现代分布式应用程序的需求分为4类 , 分别是生命周期(lifecycle)、网络(networking)、状态(state)和绑定(binding) 。
  • 生命周期:编程语言会指定生态系统中的可用库、打包格式和运行时 , 自动化部署、弹性伸缩、自愈等代表了应用程序生命周期的需求 。

    特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。