查看原文
其他

蚂蚁金服开源了一款研发框架!还是增强版的

huber 开发者技术前线 2023-09-18

点击“开发者技术前线”,选择“星标🔝”

让一部分开发者看到未来

  来自:Github中文社区  作者:huber


hello,我是huber!


最近有读者留言,问hub哥有没有关于后端的项目推荐,好巧啊,最近刚刚蚂蚁爆出了IPO的新闻,一批开发者又财富了,因此趁这个热点,推荐下蚂蚁开源的SOFABoot。


目前该项目开源不久,以及收获1K star




读者:你是GitHub 为何要推荐码云的上的项目? 有内鬼?



因为这个好项目没在GitHub开源呀,我千万个泥吗。。。




Spring Boot 是一个非常优秀的开源框架,可以非常方便地就构建出一个基于 Spring 的应用程序,但是在使用过程中,还是会遇到一些问题:

  • Spring Boot 虽然通过依赖管理,但无法隔离

  • Spring Boot 的健康检查能力

  • 不能模块化

  • 企业级日志缺失


于是 SOFABoot 出现了。


SOFABoot


SOFABoo是蚂蚁金服开源的基于 Spring Boot 的研发框架,它在 Spring Boot 的基础上,解决了上面的几个痛点。提供下面几个能力。


增强 Spring Boot 的健康检查能力


SOFABoot 增加了 Spring Boot 现有的健康检查的能力,提供了 Check 的能力。利用 Readiness Check 的能力,SOFA 中间件中的各个组件只有在 Readiness Check 通过之后,才将流量引入到应用的实例中。

日志空间隔离能力


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

提供类隔离的能力

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

SOFA 中间件的集成管理

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


模块化开发

在企业级应用场景,模块化开发是解决多团队沟通成本的有效解决方案。
SOFABoot 从 2.4.0 版本开始支持基于 Spring 上下文隔离的模块化开发能力,每个 SOFABoot 模块使用独立的上下文,避免不同模块间的冲突,解决多团队沟通成本的沟通成本。

看着很诱惑啊,快上车。。。。

项目地址

开源地址:https://gitee.com/sofastack/sofa-boot
文档:https://www.sofastack.tech/projects/sofa-boot/overview/


OK!到这就是这期分享
如果觉得文章有用,请点在看,收藏,分享。


— 完 —


前线推出学习交流群一定要备注:研究/工作方向+地点+学校/公司+昵称(如目标java+上海+上交+可可),根据格式备注,可更快被通过且邀请进群

扫码加我微信进群,内推和技术交流,大佬们零距离



END

点个在看吧

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存