当前位置: 首页 > news >正文

网页在线制作网站源码省住房城乡建设厅门户网站

网页在线制作网站源码,省住房城乡建设厅门户网站,成都哪家公司做网站比较好,中小企业电子商务网站建设介绍 阿里巴巴的 Seata#xff08;Service Aligned Transaction Alternative#xff09;是一个开源的分布式事务解决方案#xff0c;旨在解决微服务架构中跨服务、跨数据库的事务一致性问题。它可以帮助开发者管理分布式系统中的全局事务#xff0c;确保在多个服务之间的事…介绍 阿里巴巴的 SeataService Aligned Transaction Alternative是一个开源的分布式事务解决方案旨在解决微服务架构中跨服务、跨数据库的事务一致性问题。它可以帮助开发者管理分布式系统中的全局事务确保在多个服务之间的事务一致性。 引入依赖 !--seata-- dependencygroupIdio.seata/groupIdartifactIdseata-spring-boot-starter/artifactIdversion1.6.1/version /dependency配置 每个服务中引入 seata:registry: #注册中心的配置type: nacos #注册中心类型为nacosnacos:server-addr: 172.23.4.128:8848 #服务注册地址namespace: #命名空间group: DEFAULT_GROUP #默认DEFAULT_GROUPapplication: seata-server #服务名称tx-service-group: test #事务组名称service:vgroup-mapping: #事务与组的映射关系test: default XA模式 阶段1预提交阶段 参与事务的各个资源如数据库会锁定事务需要的资源并准备执行。此时Seata 会询问每个参与者是否可以提交参与者进行本地准备并响应是否可以提交。 阶段2提交或回滚阶段 如果所有参与者都可以提交即没有遇到错误Seata 会发出全局提交请求否则发出回滚请求。 事务一致性采用 XA 协议保证跨多个资源的事务的一致性确保事务在分布式环境中能实现原子性操作。 资源协调Seata 作为事务协调者协调所有参与资源的提交与回滚确保最终一致性。 回滚与补偿若事务失败Seata 会确保通过回滚来恢复到事务开始前的状态。 支持的数据库Seata XA模式支持通过 XA 协议的数据库常见的如 MySQL、Oracle 等前提是这些数据库支持 XA 协议。 缺点 性能开销XA 模式的两阶段提交协议需要多次通信和锁定资源可能会导致性能下降特别是在大规模、高并发的场景中。 支持的资源类型较少XA 协议主要支持数据库等传统资源对于一些新型的分布式资源如消息队列、缓存等可能支持不够好或者实现较复杂。 开启XA模式 在全局配置中添加 seata:data-source-proxy-mode: XA #开启XA模式开启事务 GetMapping(/pay)GlobalTransactionalpublic SaResult pay(){//假设余额扣减String userIdStpUtil.getLoginIdAsString();LambdaUpdateWrapperUser updateWrapper new LambdaUpdateWrapper();updateWrapper.eq(User::getId, userId) // 根据用户ID进行查询.setSql(play_num play_num - 1); // 扣减play_numberuserService.update(updateWrapper);if(true){ //模拟报错int i 1 / 0;}goodsClient.delete();//删除return SaResult.ok();}相关的服务也需要 Transient DeleteMapping(/delete)Transientpublic Boolean delete(){return goodsService.removeById(1);}这里进行了两次SQL一次是自己的user库一个是远程调用的微服务。如果其中一个报错了都会保证数据的一致性。 AT模式 主推的是AT模式AT模式同样是分阶段提交的事务模型缺弥补了XA模型中资源锁定周期过长的缺陷。AT模式会导致几毫秒的数据不一致因为立马提交了SQL语句。 运行步骤 阶段一注册事务分支-记录undo-log(数据快照) -执行业务SQL并提交 阶段二删除undo-log(数据快照) 因此如果使用AT模式需要给每一个微服务都添加undo-log表。 相关文档https://seata.apache.org/zh-cn/docs/v1.5/overview/what-is-seata 创建undo-log CREATE TABLE undo_log (id bigint(20) NOT NULL AUTO_INCREMENT,branch_id bigint(20) NOT NULL,xid varchar(100) NOT NULL,context varchar(128) NOT NULL,rollback_info longblob NOT NULL,log_status int(11) NOT NULL,log_created datetime NOT NULL,log_modified datetime NOT NULL,PRIMARY KEY (id),UNIQUE KEY ux_undo_log (xid,branch_id) ) ENGINEInnoDB AUTO_INCREMENT1 DEFAULT CHARSETutf8;修改AT模式 data-source-proxy-mode: AT 去除默认就是AT模式 seata:data-source-proxy-mode: ATSQL日志 事务开始时会先记录快照如果报错就会回滚。 如何选择模式 如果对业务一致性高的话选择XA模式会对数据库进行锁表对于性能要求选择AT模式AT模式会导致几毫秒的数据不一致因为立马提交了SQL语句。
http://www.hkea.cn/news/14531078/

相关文章:

  • 网站地图的形式软件项目管理的主要内容包括哪些
  • 百度人气榜排名windows优化大师最新版本
  • 上市公司专利查询网站网站备案填写网站名称
  • 青羊网站建设开发网站公司收费
  • 橙色在网站中的应用自己建设企业网站
  • 济南网站建设团队岳阳做网站公司
  • 徐州建设企业网站个人的网站怎么备案表
  • 服装网站wordpress 备份到云盘
  • 高质量的装修公司赣州seo快速霸屏
  • 商务网站推广目标有哪些平果县免费网站哪家好
  • 网站开发的发展网站建设多少钱一个平台
  • 深圳市宝安区邮政编码泰州百度seo
  • 便宜网站设计注册一个小网站
  • 茶叶网站模板ui动效网站
  • 如何创办一个赚钱的网站大连自助建站
  • 百度收录多的是哪些网站组织部网站建设方案
  • 被称为网站开发神器安徽省建设部干部网站
  • 广东成都网站建设推广公司外贸网站模板制作
  • 南京网站设计课程平台公司有哪些
  • 网站建设有什么意见网站设计公司 无锡
  • 昆明制作网站费用企业做网站需要什么条件
  • 网站开发源码售卖合同吉林建站
  • 网站 板块 模块关于营销策划的方案
  • 做外贸翻译用那个网站河北seo网站优化价格
  • 做网站 多页面网址怎么弄最新的网络营销方式
  • 临清住房建设网站中国互联网企业排名前十名
  • 网站平台建设属于什么采购wordpress多个标签页
  • 营销网站 建设 高端有哪些可以建设网站的单位
  • 杭州网站seo软件开发类型
  • 网站的项目建设周期建设网站需要备案么