SOFA Weekly | SOFABoot 发布、SOFAJRaft 以及 SOFARPC 内容合辑

2024-01-17 04:48

本文主要是介绍SOFA Weekly | SOFABoot 发布、SOFAJRaft 以及 SOFARPC 内容合辑,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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

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

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

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

SOFAStack: https://github.com/sofastack

  每周读者问答提炼  

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

我们会筛选重点问题通过 

" SOFA WEEKLY " 的形式回复

1、@陈亚兵 提问:

我想单独使用注册中心 SOFARegistry,可能的服务有 Java 和 Python,SOFARegistry 支持 Python 服务接口的注册吗?

A:SOFARegistry 注册中心是支持各个语言的服务发现和订阅的,目前开源版中只有 Java client。实现其他语言的服务发现和订阅,需要自己实现相关语言的 Registry client。

sofa-bolt-python 也有服务发现和发布,它和 sofa-registry 的发现有什么不同吗?

A:sofa-bolt-python 只做了使用 MOSN 的服务接口的客户端。sofa-registry 是服务端。

SOFARegistry:https://github.com/sofastack/sofa-registry

2、@刘明 提问:

Seata 的 XA 模式做了一个压测,tps=1000,开始报错,ORA-24756:事务处理不存在。看了下数据库global_table,状态是 3。3 是 CommitRetrying , 这说明 phase 1 阶段过了,2 阶段提交报事务不存在。目前 global_table 里有700多条记录,95%是状态3,还有状态1的。

A:应该是一个原因,很可能就是2阶段提交失败了。begin 的你查看下他的分支事务状态是什么。

begin 的分支表里没有数据,可能注册就失败了。

A:是的,有可能,TC 收到了,然后 TM 超时了,我建议你 1000tps 的测试,搞个 TC 集群,就一台可能撑不住。

我想在出错的时候,有个日志轨迹,可以知道数据目前是不是脏的?

A:select for update 或者 update x=x+n 这样写法一般没事。

会不会锁住记录呢?

A:不锁住怎么保证隔离性。这个 for update xa 没提交前会锁住的,这个锁由数据库方自己已经实现了。

是的,那1阶段已经过了,记录会一直锁在那里了吗?

A:二阶段没提交,锁在数据库肯定没释放。不过看起来你应该提交了吧,因为已经提示你事务不存在了。

是的,事务提示不存在,但是数据没有提交。我研究下。

A:可以的,seata-xa 现在还不是特别完善,可以多研究下,发现问题可以提交 PR 来贡献,一起让 XA 更稳定更好。

并发情况下,事务已经提交,TCC 发起 global commit 请求超时导致了 commitRetry,因此事务不再存在,只是 TCC 会一直去重试。这导致了性能下降很快,不断重复已经不存在事务的 commit 动作,使用 Oralce 测试下来耗时很大,MySQL 可能也不会更好。考虑在 RM 端做 xaCommit 的时候,引入一个 Redis 检查 xid 是否已经提交,已经提交返回提交成功。

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

  本周推荐阅读  

  • 基于 RAFT 的生产级高性能 Java 实现 - SOFAJRaft 系列内容合辑

  • 生产级高性能 Java RPC 框架 - SOFARPC 系列内容合辑

  • 蚂蚁是如何改进 K8s 集群敏感信息的安全防护的?

  SOFA 项目进展  

本周发布详情如下:

发布 SOFABoot v3.4.3 版本,主要变更如下:

  • 新增 endpoint,支持展示启动耗时信息;

  • 升级 Tomcat 版本,修复安全隐患 CVE-2020-11996;

详细发布报告:

https://github.com/sofastack/sofa-boot/releases/tag/v3.4.3

  社区活动预告  

A2M 峰会旨在发现全球互联网领域在人工智能、大数据、互联网架构等领域的创新工程和杰出团队,整合国际最佳技术实践,构建行业案例研究智库,帮助中国企业在人工智能时代成功转型、升级。蚂蚁集团也受邀进行云原生构建之路的专题分享。

分享主题:Dubbo 基于 MOSN 在 Service Mesh 场景下的落地实践

听众收益:

  • 了解落地 Service Mesh 对于整体架构的收益;

  • 了解 MOSN 社区的发展现状和规划;

  • 了解 Dubbo 在各种业务场景和上云发展阶段中如何优雅落地 Service Mesh;

分享时间:2020-09-05 16:50-17:50

活动地点:上海

活动报名:活动详见此条,点击“阅读原文”即可报名

本文归档在 sofastack.tech。

这篇关于SOFA Weekly | SOFABoot 发布、SOFAJRaft 以及 SOFARPC 内容合辑的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/614901

相关文章

SpringBoot使用Jasypt对YML文件配置内容加密的方法(数据库密码加密)

《SpringBoot使用Jasypt对YML文件配置内容加密的方法(数据库密码加密)》本文介绍了如何在SpringBoot项目中使用Jasypt对application.yml文件中的敏感信息(如数... 目录SpringBoot使用Jasypt对YML文件配置内容进行加密(例:数据库密码加密)前言一、J

定价129元!支持双频 Wi-Fi 5的华为AX1路由器发布

《定价129元!支持双频Wi-Fi5的华为AX1路由器发布》华为上周推出了其最新的入门级Wi-Fi5路由器——华为路由AX1,建议零售价129元,这款路由器配置如何?详细请看下文介... 华为 Wi-Fi 5 路由 AX1 已正式开售,新品支持双频 1200 兆、配有四个千兆网口、提供可视化智能诊断功能,建

如何解决Pycharm编辑内容时有光标的问题

《如何解决Pycharm编辑内容时有光标的问题》文章介绍了如何在PyCharm中配置VimEmulator插件,包括检查插件是否已安装、下载插件以及安装IdeaVim插件的步骤... 目录Pycharm编辑内容时有光标1.如果Vim Emulator前面有对勾2.www.chinasem.cn如果tools工

C#比较两个List集合内容是否相同的几种方法

《C#比较两个List集合内容是否相同的几种方法》本文详细介绍了在C#中比较两个List集合内容是否相同的方法,包括非自定义类和自定义类的元素比较,对于非自定义类,可以使用SequenceEqual、... 目录 一、非自定义类的元素比较1. 使用 SequenceEqual 方法(顺序和内容都相等)2.

五大特性引领创新! 深度操作系统 deepin 25 Preview预览版发布

《五大特性引领创新!深度操作系统deepin25Preview预览版发布》今日,深度操作系统正式推出deepin25Preview版本,该版本集成了五大核心特性:磐石系统、全新DDE、Tr... 深度操作系统今日发布了 deepin 25 Preview,新版本囊括五大特性:磐石系统、全新 DDE、Tree

Linux Mint Xia 22.1重磅发布: 重要更新一览

《LinuxMintXia22.1重磅发布:重要更新一览》Beta版LinuxMint“Xia”22.1发布,新版本基于Ubuntu24.04,内核版本为Linux6.8,这... linux Mint 22.1「Xia」正式发布啦!这次更新带来了诸多优化和改进,进一步巩固了 Mint 在 Linux 桌面

多模块的springboot项目发布指定模块的脚本方式

《多模块的springboot项目发布指定模块的脚本方式》该文章主要介绍了如何在多模块的SpringBoot项目中发布指定模块的脚本,作者原先的脚本会清理并编译所有模块,导致发布时间过长,通过简化脚本... 目录多模块的springboot项目发布指定模块的脚本1、不计成本地全部发布2、指定模块发布总结多模

高效+灵活,万博智云全球发布AWS无代理跨云容灾方案!

摘要 近日,万博智云推出了基于AWS的无代理跨云容灾解决方案,并与拉丁美洲,中东,亚洲的合作伙伴面向全球开展了联合发布。这一方案以AWS应用环境为基础,将HyperBDR平台的高效、灵活和成本效益优势与无代理功能相结合,为全球企业带来实现了更便捷、经济的数据保护。 一、全球联合发布 9月2日,万博智云CEO Michael Wong在线上平台发布AWS无代理跨云容灾解决方案的阐述视频,介绍了

Vue3项目开发——新闻发布管理系统(六)

文章目录 八、首页设计开发1、页面设计2、登录访问拦截实现3、用户基本信息显示①封装用户基本信息获取接口②用户基本信息存储③用户基本信息调用④用户基本信息动态渲染 4、退出功能实现①注册点击事件②添加退出功能③数据清理 5、代码下载 八、首页设计开发 登录成功后,系统就进入了首页。接下来,也就进行首页的开发了。 1、页面设计 系统页面主要分为三部分,左侧为系统的菜单栏,右侧

两个月冲刺软考——访问位与修改位的题型(淘汰哪一页);内聚的类型;关于码制的知识点;地址映射的相关内容

1.访问位与修改位的题型(淘汰哪一页) 访问位:为1时表示在内存期间被访问过,为0时表示未被访问;修改位:为1时表示该页面自从被装入内存后被修改过,为0时表示未修改过。 置换页面时,最先置换访问位和修改位为00的,其次是01(没被访问但被修改过)的,之后是10(被访问了但没被修改过),最后是11。 2.内聚的类型 功能内聚:完成一个单一功能,各个部分协同工作,缺一不可。 顺序内聚: