SOFA Weekly | SOFAStack & MOSN:新手任务计划,QA 整理

本周的SOFAWEEKLY聚焦于蚂蚁集团的金融级云原生架构SOFAStack,探讨了二阶段提交异常处理、MOSN进程间的监听文件描述符继承以及MOSN的forkexec方式。同时,提到了Seata的全局事务回滚机制,并分享了相关阅读材料和开源项目新手任务。
摘要由CSDN通过智能技术生成

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

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

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

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

SOFAStack: https://github.com/sofastack

  SOFAGirl 的周五 Weekly   

  每周读者问答提炼  

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

我们会筛选重点问题通过 

" SOFA WEEKLY " 的形式回复

1、@孙运盛 提问:

我想咨询大家一个问题,假如二阶段提交或者回滚的方法里,再发生异常的话,应该如何处理呢?

A:这个异常后,重新捞取之前没结束的事务,重试就可以了吧,二阶段反正已经不阻塞其它一阶段的流程了。

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

2、@胡希国 提问:

我想请教一个问题,这里 New MOSN 收到 Old MOSN 传来的监听文件描述符之后,利用 filelistener 函数产生一个 listener 的作用是和 bind 一样么?就在 New MOSN 上开始监听了是吗?那这时候 Old MOSN 不也同时在监听么,这里的内部逻辑是什么样的?

A:跟 bind 不一样,这儿是同一个 fd,两个进程都监听,常规操作。你可以想象成 Nginx 的多个进程都可以监听一个 listen 一样。

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

3、@胡希国 提问:

MOSN 的 forkexec 是个怎么样的方式呢?它也和 Envoy 一样有一个独立的 python(envoy)进程来负责产生新的 MOSN 进程么?

A:MOSN 启动起来之后检查到有 socket 文件,然后和 Old MOSN 通信继承 fd,继承完了通知 Old MOSN 退出,所以你可以直接启动一个 MOSN 来。

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

3、@胡希国 提问:

想请问下 MOSN 实现的过程为什么没有采用直接 fork 父进程的方式呢?

A:容器间升级是不能 fork 的。

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

3、@ch 提问:

今天发生了一个 rollback status: TimeoutRollbacking 超时问题。
描述: Seata 提示 rollback status: TimeoutRollbacking。
出现原因:全局事务在执行 order 库和 account 库,因为 account 库被 IO 堵死 导致业务超时执行了 70s。
然后 Seata 就报 timeout 导致 order 库回滚了数据 account 没有回滚数据(account 已经被 IO 流撑死,无法读写数据)。
版本:client 1.3.0 server 1.3.0。

A:account 没有回滚诗句,tc 会重试。回滚事务,只要注册了的事务就一定能回滚,没注册的本地事务就会回滚,所以其实没有任何问题。

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

  本周推荐阅读  

  SOFAStack & MOSN:新手任务计划  

作为技术同学,你是否有过“想参与某个开源项目的开发,但是不知道从何下手“的感觉?


为了帮助大家更好的参与开源项目,SOFAStack 和 MOSN 社区会定期发布适合新手的新手开发任务,帮助大家 learning by doing

Layotto 新手任务:

  • 支持运行多个 Wasm 模块,以便让 Layotto 成为 FaaS 容器;

  • 提供 Dockerfile,以便用户用 docker 部署 Layotto;

  • 看懂 Wasm 模块的实现并为 Wasm 模块编写单元测试。

详见 :

https://github.com/mosn/layotto/issues/108#issuecomment-872779356

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值