《Java架构师的第一性原理》101 SOFAStack源码学习

1 简介

SOFAStack™(Scalable Open Financial Architecture Stack)是一套用于快速构建金融级云原生架构的中间件,也是在金融场景里锤炼出来的最佳实践。

2 主要项目

SOFABoot

SOFABoot 基于 Spring Boot 的研发框架,在其基础上提供了诸如 Readiness Check,类隔离,日志空间隔离,Bean 异步初始化等能力。

1)Readiness Check能力是怎么实现的?

Readiness Check 表示就绪性探测,解释可参考这篇文章。Kubernetes 健康状态检查liveness和readiness

Readiness Check 的实现原理见文章健康检查。目前 SOFA 中间件已经通过 SOFABoot 的 Readiness Check 的能力来控制了上游流量的进入。

2)Bean 异步初始化的目的是什么?

启动加速。

模块并行也可以提高启动加速。模块并行加载参考相应文档

3)模块隔离

  • 基于代码组织上的模块化
  • 基于 Spring 上下文隔离的模块化
  • 基于 ClassLoader 隔离的模块化

SOFARPC

SOFATracer

SOFATracer 是蚂蚁金服开发的基于 OpenTracing 规范 的分布式链路跟踪系统,其核心理念就是通过一个全局的 TraceId 将分布在各个服务节点上的同一次请求串联起来。通过统一的 TraceId 将调用链路中的各种网络调用情况以日志的方式记录下来同时也提供远程汇报到 Zipkin 进行展示的能力,以此达到透视化网络调用的目的。

1)异步线程采样是怎么实现的?

  • SofaTracerRunnable
  • SofaTracerCallable
  • 异步场景
  • 线程池 

 

SOFALookout

SOFARegistry

3 孵化项目

SOFAMesh

SOFADashboard

4 工具项目

SOFABolt

SOFAJRaft

SOFAActs

SOFAArk

5 生态项目

Seata

 

SOFAStack

posted @ 2022-07-08 10:20  沙漏哟  阅读(223)  评论(0编辑  收藏  举报