FAQ

Q:蚂蚁开源的计划是什么/蚂蚁对待开源的态度是什么?

蚂蚁金服会逐步将成熟的技术开源出来,希望能够持续高质量地回馈社区。我们也认为这个领域还有非常多的空白需要填补,而且在金融这个行业,有很多特有的属性,非常期望行业同仁能参与共建,并形成行业标准,蚂蚁金服技术团队非常乐意与大家合作,并提供自己的最佳实践、设计思路甚至是开源实现。

Q: SOFA(Scalable Open Financial Architecture) 是什么?

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

Q:SOFA 开源的未来的计划

目前 SOFA 开源的内容是包含了 SOFABoot、SOFARPC、SOFAMesh 主要产品以及周边工具。针对这几个产品,我们有比较多的特性在内部做了大规模使用的,在未来几个月内会逐步开源。另外,SOFA 作为金融级分布式架构的解决方案,也包含了在分布式领域下其他的组件,目前也在紧锣密鼓地准备开源中。

Q:和类似的开源项目之间的关系是什么?

开源社区中有非常多非常优秀的开源软件,我们的部分开源项目就是基于现有的开源软件的基础上进行增强的,比如说 SOFABoot 就是基于 Spring Boot,可以说站在了巨人的肩膀上。SOFABoot 和 Spring Boot 是相互补充的关系,不是谁替代谁的关系。 SOFARPC 最早起源于阿里集团内部的 HSF,但是经过了蚂蚁金服集团内部多年的独立发展,目前脱离为一个独立的产品。 SOFARPC 在协议,网络,路由,可扩展性等层面都进行了大量的改造和优化的工作,以满足蚂蚁金服大规模金融级的业务场景。在蚂蚁金服内部,SOFARPC 在蚂蚁中间件(SOFAStack)的生态下,有完善的微服务技术栈支持,包括微服务研发框架,RPC 框架,服务注册中心,分布式定时任务,限流/熔断框架,动态配置推送,分布式链路追踪,Metrics监控度量等等。截止 2017 年双十一,SOFARPC 已经被蚂蚁几千个系统所使用,生产环境发布的接口数量超过了几万。 但是在开源领域,SOFARPC 目前还是一个起步阶段,开源生态还在建设当中,随着开源计划的推进,我们会在后续的版本里增加各个周边组件,完善微服务技术栈。同时也欢迎大家来贡献,共同打造 SOFAStack。

Q:哪些会开源,哪些不会开源

SOFA 的很多组件都会逐步开源,相对比较高阶和复杂的功能,比如异地多活,比较高阶的集群高可用方案,我们会以解决方案和商业版本的方式提供。未来也会根据情况,逐步开放。

Q:开源版本和商业版本的区别是什么?

开源的版本包含了核心的能力,开源版本更加适合于自身拥有非常强大的技术实力,能够组建一个足够力量的技术团队在开源版本上进行开发的公司。而商业版本更加适合于企业级的应用,我们会提供商业技术支持和完整的咨询服务,同时会及时提供bugfix、故障分析和漏洞修复等服务。另外,商业化版本会与完整的 PaaS 和 DevOps 产品高度集成,提供完整的金融级分布式服务。