蟒蚂蚁

注册

 

发新话题 回复该主题

蚂蚁金服开源增强版SpringBoot [复制链接]

1#
北京白癜风医院治疗方法         http://m.39.net/pf/bdfyy/tslf/

SOFABoot是蚂蚁金服开源的基于SpringBoot的研发框架,它在SpringBoot的基础上,提供了诸如ReadinessCheck,类隔离,日志空间隔离等等能力。在增强了SpringBoot的同时,SOFABoot提供了让用户可以在SpringBoot中非常方便地使用SOFA中间件的能力。为了解决SpringBoot在实施大规模微服务架构时候的问题,SOFABoot提供了以下的能力:

增强SpringBoot的健康检查能力

针对SpringBoot缺少ReadinessCheck能力的情况,SOFABoot增加了SpringBoot现有的健康检查的能力,提供了ReadinessCheck的能力。利用ReadinessCheck的能力,SOFA中间件中的各个组件只有在ReadinessCheck通过之后,才将流量引入到应用的实例中,比如RPC,只有在ReadinessCheck通过之后,才会向服务注册中心注册,后面来自上游应用的流量才会进入。

提供类隔离的能力

为了解决SpringBoot下的类依赖冲突的问题,SOFABoot基于SOFAArk提供了SpringBoot上的类隔离的能力,在一个SOFABoot的系统中,只要引入SOFAArk相关的依赖,就可以将SOFA中间件相关的类和应用相关的类的ClassLoader进行隔离,防止出现类冲突。当然,用户也可以基于SOFAArk,将其他的中间件、第三方的依赖和应用的类进行隔离。

日志空间隔离能力

为了统一大规模微服务场景下的中间件日志的打印,SOFABoot提供了日志空间隔离的能力给SOFA中间件,SOFA中间件中的各个组件采用日志空间隔离的能力之后,自动就会将本身的日志和应用的普通日志隔离开来,并且打印的日志的路径也是相对固定,非常方便进行统一地监控。

SOFA中间件的集成管理

基于SpringBoot的自动配置能力,SOFABoot提供了SOFA中间件统一易用的编程接口以及SpringBoot的Starter,方便在SpringBoot环境下使用SOFA中间件,SOFA中间件中的各个组件都是独立可插拔的,节约开发时间,和后期维护的成本。

模块化开发

SOFABoot从2.4.0版本开始支持基于Spring上下文隔离的模块化开发能力,每个SOFABoot模块使用独立的Spring上下文,避免不同SOFABoot模块间的BeanId冲突,有效降低企业级多模块开发时团队间的沟通成本。

项目地址

分享 转发
TOP
发新话题 回复该主题