SOFA Weekly | SOFABoot、SOFAArk 发布、9/20 上海线下活动推荐

2024-01-17 04:48

本文主要是介绍SOFA Weekly | SOFABoot、SOFAArk 发布、9/20 上海线下活动推荐,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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

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

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

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

SOFAStack: https://github.com/sofastack

  每周读者问答提炼  

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

我们会筛选重点问题通过 

" SOFA WEEKLY " 的形式回复

1、@陈健斌 提问:

Seata 使用注册中心只存储个地址列表,引入 SOFAJRaft 后感觉注册中心没必要了?用户用起来就跟 zk 集群、kafka 集群一样,ip:port,ip:port 这样。

A:这个 看需求了,都可以啊。我感觉还是可以继续使用注册中心,然后 SOFAJRaft 的地址从注册中心回去,动态构建 SOFAJRaft 集群。

可以噢,这样 client 端不需要设置 server 的集群了,通过注册中心来就可以了,自动组装了。

我目前是这么设计的,有空的话还望指点一二。

A:Sesta server 经常会经常替换吗?

这个得看用户了,要不咱假设2个情况吧,如果不经常替换,此方案适用不。经常替换下要做哪些改进?

A:经常替换的话要考虑 raft 集群的替换,要处理 addpeer removepeer 这是要走 raft 协议的(用 cliservice 这个接口),就是换一台 server 不是换个地址就完事了,需要调用 addpeer把新机器加入 raftgroup 然后 SOFAJRaft 会自动同步数据,移除一个节点需要调用 removepeer。

也就是,如果我现在扩容,比如我原来的节点是127.0.0.1:7091,127.0.0.1:7092,127.0.0.1:7093 然后我现在要加一个127.0.0.1:7094,我能不能直接跟 zk 那边扩容一样,我新加入进来的节点设置的地址是127.0.0.1:7091,127.0.0.1:7092,127.0.0.1:7093,127.0.0.1:7094,先让他加入进去,然后手动挨个重启其余3台。目前这样的扩缩容,我的设计方案能满足吗?

A:不需要重启,需要 addpeer,参考第11小结,最有效的排查 SOFAJRaft 问题工具

https://www.sofastack.tech/projects/sofa-jraft/jraft-user-guide/

2、@koutatu 提问:

想咨询下,Seata Saga 模式下,TC 的作用是什么呢,回滚操作还是 TC 触发吗?感觉 Saga 状态机模式下,状态机可以控制回滚,TC 是不是只是记录下状态,不做什么实际处理了呢?

A:你说的应该是对的,Saga 脱离 TC 理论上都是可行的。

目前的回滚操作是不是也是状态机自身控制的,也就是链路里面的每一步都需要有一个状态机。TC 只负责接收消息,而不是像 TCC 或者拦截器式的 Saga 一样,回滚由 TC 统一控制。

A:TC 在 Saga 模式的作用就是记录全局事务分支事务状态。

  SOFABoot 相关阅读推荐  

  • 蚂蚁金服研发框架总览 | SOFABoot 框架剖析

  • 蚂蚁金服研发框架日志隔离解析 | SOFABoot 框架剖析

  • SOFABoot 扩展点初体验 | SOFALab 实践系列

  • 剖析 | 详谈 SOFABoot 模块化原理

  • 实操 | 基于 SOFABoot 进行模块化开发

  • 开源 | SOFABoot 类隔离原理剖析

  SOFA 项目进展  

本周发布详情如下:

1、发布 SOFAArk v1.1.4 版本,主要变更如下:

  • 支持动态替换 biz name;

  • TestClassLoader 导出 mockito 包以支持 mockito 测试框架;

  • 修复 AfterBizStopEvent 事件处理时机问题导致的 NPE;

  • 修复 web 模块卸载问题;

  • 支持 ark telnet 使用安全模式启动;

详细发布报告:

https://github.com/sofastack/sofa-ark/releases/tag/v1.1.4

2、发布 SOFABoot v3.4.4 版本,主要变更如下:

  • 提供 jvm 调用拦截扩展;

  • 修复若干测试用例;

  • 修复在 ark 环境使用 sofa:reference 引用 jvm 服务出现 NPE bug;

  • 修复健康检查通过但 ExtensionComponent activate 失败 bug;

详细发布报告:

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

  社区活动预告  

近几年,越来越多的传统企业面临互联网化,IOT、区块链、AI、5G 等技术也在高速发展,任何一个技术的推广到成熟都会带来数据量的指数级增长,都会对存储带来巨大的冲击。相信随着这些技术的突破,未来越来越多的核心场景会走向分布式的领域。国内很多团队也在进行分布式数据库的探索与实践。

OceanBaseDev Meetup 是以城市站展开的数据库技术交流活动,旨在为关注分布式数据库技术的同学提供技术交流、分享、探讨的空间与平台。

OceanBaseDev Meetup#1 上海站,将邀请蚂蚁集团 OceanBase 团队的三位核心研发专家以及网易杭研资深研发工程师,针对分布式数据库的分布式事务以及落地实践展开分享。现场更有外滩大会门票等你来拿~

活动主题OceanBaseDev Meetup#1 上海站「深入分布式数据库:事务·高可用·云原生」

出品人:

  • 杨传辉(花名:日照)蚂蚁集团研究员、OceanBase 总架构师

  • 韩富晟(花名:颜然)蚂蚁集团资深技术专家、OceanBase 事务研发负责人

活动时间:2020-09-20 13:00-17:30

活动地点:上海市杨浦区政学路77号 InnoSpace+

活动报名:点击“阅读原文”,了解活动详细议题并锁定席位

本文归档在 sofastack.tech。

这篇关于SOFA Weekly | SOFABoot、SOFAArk 发布、9/20 上海线下活动推荐的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

微信公众号脚本-获取热搜自动新建草稿并发布文章

《微信公众号脚本-获取热搜自动新建草稿并发布文章》本来想写一个自动化发布微信公众号的小绿书的脚本,但是微信公众号官网没有小绿书的接口,那就写一个获取热搜微信普通文章的脚本吧,:本文主要介绍微信公众... 目录介绍思路前期准备环境要求获取接口token获取热搜获取热搜数据下载热搜图片给图片加上标题文字上传图片

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

SpringKafka消息发布之KafkaTemplate与事务支持功能

《SpringKafka消息发布之KafkaTemplate与事务支持功能》通过本文介绍的基本用法、序列化选项、事务支持、错误处理和性能优化技术,开发者可以构建高效可靠的Kafka消息发布系统,事务支... 目录引言一、KafkaTemplate基础二、消息序列化三、事务支持机制四、错误处理与重试五、性能优

新特性抢先看! Ubuntu 25.04 Beta 发布:Linux 6.14 内核

《新特性抢先看!Ubuntu25.04Beta发布:Linux6.14内核》Canonical公司近日发布了Ubuntu25.04Beta版,这一版本被赋予了一个活泼的代号——“Plu... Canonical 昨日(3 月 27 日)放出了 Beta 版 Ubuntu 25.04 系统镜像,代号“Pluc

查看Oracle数据库中UNDO表空间的使用情况(最新推荐)

《查看Oracle数据库中UNDO表空间的使用情况(最新推荐)》Oracle数据库中查看UNDO表空间使用情况的4种方法:DBA_TABLESPACES和DBA_DATA_FILES提供基本信息,V$... 目录1. 通过 DBjavascriptA_TABLESPACES 和 DBA_DATA_FILES

最新Spring Security实战教程之表单登录定制到处理逻辑的深度改造(最新推荐)

《最新SpringSecurity实战教程之表单登录定制到处理逻辑的深度改造(最新推荐)》本章节介绍了如何通过SpringSecurity实现从配置自定义登录页面、表单登录处理逻辑的配置,并简单模拟... 目录前言改造准备开始登录页改造自定义用户名密码登陆成功失败跳转问题自定义登出前后端分离适配方案结语前言

OpenManus本地部署实战亲测有效完全免费(最新推荐)

《OpenManus本地部署实战亲测有效完全免费(最新推荐)》文章介绍了如何在本地部署OpenManus大语言模型,包括环境搭建、LLM编程接口配置和测试步骤,本文给大家讲解的非常详细,感兴趣的朋友一... 目录1.概况2.环境搭建2.1安装miniconda或者anaconda2.2 LLM编程接口配置2

Nginx实现前端灰度发布

《Nginx实现前端灰度发布》灰度发布是一种重要的策略,它允许我们在不影响所有用户的情况下,逐步推出新功能或更新,通过灰度发布,我们可以测试新版本的稳定性和性能,下面就来介绍一下前端灰度发布的使用,感... 目录前言一、基于权重的流量分配二、基于 Cookie 的分流三、基于请求头的分流四、基于请求参数的分

Redis 内存淘汰策略深度解析(最新推荐)

《Redis内存淘汰策略深度解析(最新推荐)》本文详细探讨了Redis的内存淘汰策略、实现原理、适用场景及最佳实践,介绍了八种内存淘汰策略,包括noeviction、LRU、LFU、TTL、Rand... 目录一、 内存淘汰策略概述二、内存淘汰策略详解2.1 ​noeviction(不淘汰)​2.2 ​LR

Vue项目的甘特图组件之dhtmlx-gantt使用教程和实现效果展示(推荐)

《Vue项目的甘特图组件之dhtmlx-gantt使用教程和实现效果展示(推荐)》文章介绍了如何使用dhtmlx-gantt组件来实现公司的甘特图需求,并提供了一个简单的Vue组件示例,文章还分享了一... 目录一、首先 npm 安装插件二、创建一个vue组件三、业务页面内 引用自定义组件:四、dhtmlx