SOFA Weekly | MOSN&SOFARPC 发布、社区活动报名

SOFA WEEKLY | 每周精选,筛选每周精华问答

同步开源进展,欢迎留言互动

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

SOFAStack 官网: https://www.sofastack.tech

SOFAStack: https://github.com/sofastack

  社区大事件  

MOSN 社区新认证一位 Committer

孙福泽(@peacocktrain)认证成为 MOSN Committer:

主要贡献: 贡献 3 个 feature PR

i. 使 MOSN 支持 Istio1.4;

ii. 协议支持 HTTP2 双向流式;

iii. 添加管道缓冲区;

MOSN:https://github.com/mosn/mosn

  每周读者问答提炼  

欢迎大家向公众号留言提问或在群里与我们互动

我们会筛选重点问题通过 

" SOFA WEEKLY " 的形式回复

1、@chromosome 提问:

这个视频中提到因为 log server 中存储得到 commitedId 和 applyId 不是任意时刻都同步的,这样的话,如果说状态机的 apply 速度较慢,很可能 client 的 read request 并不能读取到状态机最新 committed 的操作的结果。

https://tech.antfin.com/community/live/821/data/902

A:commitedIndex 和 applyIndex 的不完全同步,并不影响 read request 的结果,所以上面的后半句理解还是有点问题,可以看一下 SOFAJRaft 线性一致读的原理介绍,参考这个链接线性一致读章节:

https://www.sofastack.tech/projects/sofa-jraft/consistency-raft-jraft/

所以 counter 例子中的 readindex 写法就是为了读线性一致性吗?例如 this.counterServer.getNode().readindex

A:是的。

SOFAJRaft:https://github.com/sofastack/sofa-jraft

2、@王勇 提问:

在 AT 模式下,事务的回滚如何补偿三方的缓存操作呢?有没有额外的接口,还是只能是变成 TC 模式,或是自己写 aop?

A:TCC 嵌套 AT,TCC 二阶段行为做补充。

TCC 内应该说是不存在 AT 吧。

A:AT 保证数据库的一致性,TCC 做来二阶段时的三方处理,比如发出 MQ 消息、缓存之类的。

就是 AT 和 TCC 在同一全局事务中一起使用是吧。这个 TCC 一阶段可以是空的,二阶段回滚时清理缓存嘛?

A:嗯。

OK,我明白了。就是让 TCC 嵌套 AT,通常情况下 TCC 为空,需要补偿的时候向 TCC 里写入东西。

A:可以这么说,如果 TCC 触发二阶段是回滚,你就把缓存删掉,如果是提交就啥也不干,大概是这么个意思。

TCC 模式下 AT 是默认的吗?对于大事务,Saga 模式,您用过吗?

A:一、首先需要创建状态机引擎的 bean。

1.2.0里,状态机引擎的 bean 需要自己创建的。

1.3.0里,spring-boot-starter-seata 里会提供自动配置类。(可以先参考我修改过的代码吧。https://github.com/wangliang1986/seata)

二、需要创建 Saga 模式所需的三张表。github 上可以找到建表 SQL。

三、使用 Seata 的在线状态机设计器来定义流程。地址:

http://seata.io/saga_designer/index.html

四、将设计器生成的 json 文件放到自己项目的 resources 中,由状态机引擎去加载它。状态机配置类中有一个配置项可以配置 json 文件路径。

五、使用状态机引擎启动 Saga 事务即可。(要注意的是 1.2.0 版本中,Saga 无法与 AT 一起启用。1.3.0 将修复此问题。)

Seata:https://github.com/seata/seata

  本周推荐阅读  

  SOFA 项目进展  

本周发布详情如下:

1、发布 MOSN v0.12.0 版本,主要变更如下:

i. 支持 SkyWalking;

ii. 支持流式 HTTP2;

iii. 熔断功能、负载均衡逻辑优化,负载均衡新增 ActiveRequest 和 WRR 算法;

iv. 优化 HTTP 连接建立性能;

v. 底层实现优化;

详细发布报告:

https://github.com/mosn/mosn/releases/tag/v0.12.0

2、发布 SOFARPC v5.7.0,主要变更如下:

i. 支持基于 grpc 的 triple 协议;;

ii. 重构项目模块结构;

详细发布报告:

https://github.com/sofastack/sofa-rpc/releases/tag/v5.7.0

  社区活动报名  

本期为第一期 Service Mesh Virtual Meetup 线上系列直播第一期,邀请了四位来自不同公司的嘉宾,从四个角度对 Service Mesh 的应用实践展开分享。

本次线直播分享涵盖 Service Mesh 的可观察性和生产实践,为大家介绍 Service Mesh 中的可观察性与传统微服务中可观察性的区别,如何使用 SkyWalking 来观测 Service Mesh,还有来自百度和陌陌的 Service Mesh 生产实践。

本系列采用线上直播的形式,从 5 月 6 日开始到 5 月 14 日,每周三、周四晚上  19:00-20:00 我们相约进行一个主题分享。

时间

分享主题

分享嘉宾

嘉宾介绍

5/6

陌陌的 Service Mesh 实践

高飞航

陌陌中间件架构师

5/7Apache SkyWalking 在 Service Mesh 中的可观察性应用高洪涛Tetrate 创始工程师

5/13

Servicre Mesh 高可用在企业级生产中的实践
罗广明
百度高级研发工程师

5/14

Servicre Mesh 中的可观察性实践叶志远
G7 微服务架构师

观看直播方式:点击“阅读原文”,关注直播间,即可观看直播

本文归档在 sofastack.tech。

???? 励支持 SOFAStack 的你~

* 点下右下角“在看

* 到公众号对话框发送“T 恤”,试试手气~

* 本期互动奖品“SOFAStack 两周年纪念 T 恤

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值