开源 |蚂蚁金服启动分布式中间件开源计划,用于快速构建金融级云原生架构

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 蚂蚁金服将逐步向社区开源 SOFA 中的各个组件,助力更多机构和合作伙伴完成金融分布式转型!

我们很高兴地宣布,今天蚂蚁金服启动分布式中间件(Scalable Open Financial Architecture,以下简称 SOFA 中间件)的开源计划!


2424a767014f626ac957d423058c68248ca3cee0


SOFA 是蚂蚁金服自主研发的金融级分布式中间件,包含了构建金融级云原生架构所需的各个组件,包括微服务研发框架,RPC 框架,服务注册中心,分布式定时任务,限流/熔断框架,动态配置推送,分布式链路追踪,Metrics监控度量,分布式高可用消息队列,分布式事务框架,分布式数据库代理层等组件,是一套分布式架构的完整的解决方案,也是在金融场景里锤炼出来的最佳实践。


蚂蚁金服期望通过逐步向社区开源 SOFA 中各个组件,来帮助更多机构和合作伙伴完成金融分布式转型,帮助大家更加快速构建稳定的金融级云原生的架构,也期望 SOFA 在蚂蚁体系之外的更大场景下去应用,来进一步锻造改进这套体系,使其更加完善和稳固,并具备更多金融级的属性。所以我们也非常欢迎社区的伙伴和各行业的伙伴能够参与共同探讨、交流和共建。


Why(为什么要做)

SOFA 中间件在蚂蚁内部经历了十年的发展和四代架构的演进,被广泛应用在包括支付,借贷,信用,基金,保险等全金融场景,支撑着蚂蚁平稳度过历次双十一,双十二,新春红包等大考,创造了25.6 w/s 的交易记录,并还在不断刷新这个记录。


从 2015 年开始,蚂蚁金服开启了金融科技对外输出的战略,SOFA 也走出了蚂蚁,甚至跨越了国界,被更多金融机构与合作伙伴所使用,如天弘基金,信美互信,南京银行,PayTM、DANA钱包等。


在与合作伙伴以及客户的沟通、合作过程中,我们发现了 SOFA 的理念和能力也正是很多金融行业的企业所需要的,大家或多或少正在规划或者已经在做类似的东西,但缺乏像蚂蚁金服这么大的流量来提供考验,也缺乏专业团队的长期投入,更缺乏丰富的金融场景和严苛的业务压力来驱动技术持续发展。


随着近几年蚂蚁金服在生态构建上不断完善,以及不断地有更多的公司加入到蚂蚁金服的金融生态中,我们也发现了整个金融生态地复杂性和多样性,SOFA 中间件也需要在更多地场景下被打磨、被完善、被增强。因此,我们选择将 SOFA 逐步开源出来,在贡献给社区的同时,也期待社区、合作伙伴甚至客户,都能够一起参与共建,形成行业标准和最佳实践。


How(怎么做)

为了让 SOFA 能够开源出来,我们投入了大量的重构工作,以可扩展化的方式来层层构建 SOFA 的能力,保证 SOFA 的内部版本和开源的版本采用的是同一个内核。所以 SOFA 的内部版本就是在开源版本之上扩展了内部逻辑和历史版本的兼容逻辑。开源版本的核心逻辑,内外是一致的,并在蚂蚁金服的生产环境中被广泛使用的,同时会随着蚂蚁自身业务诉求的驱动,不断的演进。

 

开源社区有非常多优秀的技术和丰富的生态,为了更好的能融入和对接现有技术体系,尊重并遵守一些社区标准,SOFA 在设计过程中就充分考虑了兼容性和架构分层,充分兼容适配社区标准,实现组件化、可扩展、可替换。


所有的 SOFA 中间件中的组件组合起来可以发挥更大的能力,但是每一个组件都是可以被替换的,比如用户可以选择用 Dubbo 来替换 SOFARPC,或者跟 SOFARPC 对接互通;可以选择 Zookeeper 来作为服务注册发现,也可以选择 SOFA 的服务注册中心来做服务发现;分布式链路追踪组件遵守 OpenTracing 的规范,可以直接和 Zipkin 进行对接等等;Metrics组件会遵循 Metrics2.0 标准,适配 Prometheus 体系等等。


What(要做什么)

本次 SOFA 中间件开源的内容包含了 SOFABoot  SOFARPC 两个组件。


SOFABoot 是蚂蚁金服基于 Spring Boot 构建一个研发框架,整体架构上类似于蚂蚁金服之前开源的Egg框架,遵守微内核,可插拔的理念,我们以标准 Spring Boot Starter的方式,扩展了很多企业级特性,以解决大规模团队开发云原生微服务系统中会遇到的问题,如类隔离,ReadinessCheck,日志隔离等等能力,后续会开放更多内部实践过的特性,如 Spring 上下文隔离,合并部署,动态模块,Tracing、Metrics、Streaming、测试框架等。


同时,蚂蚁的很多技术团队和阿里的技术团队也开放了很多类库和组件,我们都会提供原生的集成能力和 Demo,方便大家更好的整合使用。SOFABoot 100% 兼容 Spring Boot,和 Spring Boot 并非是替代的关系,所有 Spring Boot 中的能力也都可以在 SOFABoot 中使用。


SOFABoot 的 Github 的地址是:https://github.com/alipay/sofa-boot ,欢迎大家使用反馈、贡献代码。(请将网址复制至浏览器中打开即可查看,下同。)

 

SOFARPC 是一个高效,可靠,可扩展的 RPC 的框架,是蚂蚁金服服务化架构的基石。SOFARPC 最早源于阿里内部的 HSF,经过了蚂蚁金服内部多年的发展,在协议,网络,路由,可扩展性等层面都进行了大量的改造和优化的工作,适配了更多金融级的场景。


SOFARPC 在蚂蚁金服内部是被所有在线应用的使用的服务调用框架,截止 2017 年双十一,SOFARPC 已经被蚂蚁 2000 多个系统所使用,生产环境发布的服务数量超过了 23000 个。


SOFARPC 提供了多协议的支持,包括在蚂蚁金服内部被广泛采用,并且高度优化的 Bolt 协议,以及 REST,Dubbo,gRPC 等等主流的协议;也针对内部网关,测试等等场景提供了泛化调用能力;为了解决超大规模流量的预热的问题,提供了服务预热的能力;用户也可以根据 SOFARPC 的扩展机制扩展自己需要的能力。


在后续的版本中,SOFARPC 将会加上分布式链路追踪,Metrics,更多的服务注册中心的支持,CRC 校验等等能力。


SOFARPC 的 Github 的地址是:https://github.com/alipay/sofa-rpc ,欢迎大家使用反馈、贡献代码。(请将网址复制至浏览器中打开即可查看,下同。)

 

除了以上的两个 SOFA 中间件中的组件,在接下来,我们将会陆续开源 SOFA 中间件中的其他的组件,目前这些组件正在进行一定程度地重构中,为开源做准备,敬请大家期待~

 

附本文中提到的链接:


Egg:http://eggjs.org/

SOFABoot:https://github.com/alipay/sofa-boot

SOFARPC:https://github.com/alipay/sofa-rpc

SOFABolt:https://github.com/alipay/sofa-bolt


彩蛋

最后,我们也为对 SOFA 中间件感兴趣的小伙伴们准备了一个微信交流群欢迎感兴趣的同学扫描下方二维码联系加群小助手加入我们 SOFA 交流群哦。

d3bdf54ab5c1d8d79296cfa510a15674518506d9


目录
相关文章
|
6天前
|
Cloud Native Devops 持续交付
构建未来:云原生架构在现代企业中的应用与挑战
【2月更文挑战第31天】 随着数字化转型的加速,云原生技术已经成为推动企业IT架构现代化的关键力量。本文深入探讨了云原生架构的核心组件、实施策略以及面临的主要挑战。通过分析容器化、微服务、DevOps和持续集成/持续部署(CI/CD)等关键技术,揭示了如何利用这些技术实现敏捷性、可扩展性和弹性。同时,文章还讨论了企业在采纳云原生实践中可能遇到的安全性、复杂性和文化适应性问题,并提供了解决这些问题的策略和建议。
|
2天前
|
运维 Cloud Native 持续交付
云原生架构的未来演进:打造灵活、高效的企业IT基础
随着数字化转型的不断深入,企业的IT基础设施正经历着从传统架构向云原生架构的根本转变。本文将探讨云原生技术的最新发展趋势,分析其在提高业务敏捷性、降低运维成本以及促进技术创新方面的关键作用。我们将重点讨论如何借助容器化、微服务、DevOps和持续交付等核心技术,构建一个能够适应快速变化市场需求的云原生生态系统。通过实际案例分析,揭示企业在迁移到云原生架构过程中面临的挑战与解决策略,为读者呈现一幅云原生技术赋能企业未来的蓝图。
|
4天前
|
Cloud Native Devops 持续交付
构建未来:云原生架构在企业数字化转型中的关键作用
随着企业加速其数字化进程,云计算已成为支撑创新和灵活性的基石。本文深入探讨了云原生架构如何为企业提供敏捷性、可扩展性和成本效益,以及它如何成为支持现代应用程序开发和服务交付的核心。我们将分析云原生的关键组件,包括容器化、微服务、持续集成/持续部署(CI/CD)和DevOps文化,并讨论这些技术如何协同工作以提高企业运营效率和响应市场变化的能力。此外,我们还将审视采用云原生架构的潜在挑战和克服这些挑战的策略。
|
1天前
|
Cloud Native 持续交付 云计算
构建未来:云原生架构在企业数字化转型中的关键作用
随着企业加速其数字化转型步伐,云原生架构已成为支撑这一进程的核心技术之一。本文将深入探讨云原生技术如何促进企业的敏捷性、可扩展性和创新能力,同时提供一种高效、安全和可维护的技术环境。通过分析容器化、微服务、持续集成/持续部署(CI/CD)等关键技术组件,本文揭示了云原生架构在帮助企业快速响应市场变化、优化资源使用和提升运营效率方面的内在价值。
|
3天前
|
运维 Cloud Native 持续交付
云原生技术:构建灵活高效的云平台
随着云计算技术的快速发展,云原生技术作为一种全新的应用架构范式,正在逐渐成为企业数字化转型的关键。本文将介绍云原生技术的核心概念及其在构建灵活高效的云平台中的重要作用,以及云原生技术对企业业务的影响和意义。
|
4天前
|
运维 Cloud Native 安全
构建未来:云原生技术在企业数字化转型中的关键角色
随着企业不断探索信息技术的边界,以实现敏捷、高效和可扩展的业务运营,云原生技术已经站在了风口浪尖。本文将深入探讨云原生技术的核心概念、架构以及如何在企业的数字化转型过程中发挥至关重要的作用。我们将分析微服务、容器化、持续集成/持续部署(CI/CD)等关键技术如何助力企业快速响应市场变化,并提升运维效率。同时,文中还将讨论云原生安全策略的重要性以及面临的挑战。通过具体案例分析,揭示云原生技术如何成为推动企业创新和维持竞争力的强大引擎。
|
4天前
|
运维 Cloud Native Devops
构建未来:云原生技术驱动企业数字化转型
随着云计算技术的不断演进,云原生架构已成为推动企业数字化转型的关键动力。本文深入探讨了云原生技术的核心组件、实施策略以及它们如何帮助企业实现敏捷性、弹性和可扩展性。通过分析案例研究和当前趋势,文章揭示了云原生实践如何促进创新,并为企业提供了在竞争激烈的市场中保持领先的方法。
|
4天前
|
Cloud Native Devops 持续交付
构建未来:云原生技术在企业数字化转型中的关键角色
随着企业加速迈向数字化时代,云原生技术已不仅仅是一种趋势,而是必然的选择。本文深入探讨了云原生技术如何成为支持企业敏捷性、可扩展性和创新的基石。通过分析微服务架构、容器化、持续集成与持续部署(CI/CD)和DevOps文化等关键概念,揭示了这些技术如何相互协作,以实现快速响应市场变化的能力。此外,文章还讨论了企业在采纳云原生技术时面临的挑战,以及如何克服这些挑战以充分利用云计算的潜力。
|
5天前
|
运维 Cloud Native 持续交付
构建未来:云原生技术在企业数字化转型中的关键角色
随着企业加速其数字化转型步伐,云原生技术已成为推动创新和灵活性的重要驱动力。本文深入探讨了云原生架构的核心组成,包括容器化、微服务、持续集成/持续部署(CI/CD)以及DevOps实践,并分析了这些技术如何共同促进企业应用的快速迭代与部署。通过阐述云原生技术如何优化资源利用、提升运维效率和加强系统安全性,文章为企业采纳云原生解决方案提供了全面而深刻的视角。
|
10天前
|
人工智能 监控 Cloud Native
iLogtail 2.0 来了;通义灵码下载量破百万丨阿里云云原生 2 月产品月报
iLogtail 2.0 来了;通义灵码下载量破百万丨阿里云云原生 2 月产品月报

相关产品

  • 云消息队列 MQ
  • 云消息队列 Kafka 版
  • 微服务引擎