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

广州建设工程信息网站搜索引擎优化是什么工作

广州建设工程信息网站,搜索引擎优化是什么工作,网站开发经理岗位职责,直播网站开发公司正文 1、解决的应用场景是分布式事务,每个服务有独立的数据库。 2、例如:A服务的数据库是A1,B服务的数据库是B2,A服务通过feign接口调用B服务,B涉及提交数据到B2,业务是在B提交数据之后,在A服…

正文

1、解决的应用场景是分布式事务,每个服务有独立的数据库。
在这里插入图片描述

2、例如:A服务的数据库是A1,B服务的数据库是B2,A服务通过feign接口调用B服务,B涉及提交数据到B2,业务是在B提交数据之后,在A服务内报错。

所以,希望B能回滚事务。这就是跨库的数据回滚

下载

seata下载地址

seata的配置

1、创建一个数据库,把seata的表生成出来

在这里插入图片描述
在这里插入图片描述

2、修改seata配置文件

注意有其他的需求可以参考example文件,我这里直接展示本地修改后的

#  Copyright 1999-2019 Seata.io Group.
#
#  Licensed under the Apache License, Version 2.0 (the "License");
#  you may not use this file except in compliance with the License.
#  You may obtain a copy of the License at
#
#  http://www.apache.org/licenses/LICENSE-2.0
#
#  Unless required by applicable law or agreed to in writing, software
#  distributed under the License is distributed on an "AS IS" BASIS,
#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#  See the License for the specific language governing permissions and
#  limitations under the License.server:port: 7091spring:application:name: seata-serverlogging:config: classpath:logback-spring.xmlfile:path: ${user.home}/logs/seata#extend:#logstash-appender:# destination: 127.0.0.1:4560#kafka-appender:# bootstrap-servers: 127.0.0.1:9092#  topic: logback_to_logstashconsole:user:username: seatapassword: seata
seata:#data-source-proxy-mode: XA#tx-service-group: default#service:#vgroup-mapping: # 事务组与cluster的映射关系#  default_tx_group: DEFAULT#grouplist:#  DEFAULT: 127.0.0.1:8091config:# support: nacos, consul, apollo, zk, etcd3type: nacosnacos:application: seata-serverserver-addr: 127.0.0.1:8848group : "WEIMEIZI_GROUP"namespace: username: "nacos"password: "nacos"#data-id: seataServer.propertiesregistry:# support: nacos, eureka, redis, zk, consul, etcd3, sofatype: nacosnacos:application: seata-serverserver-addr: 127.0.0.1:8848group: "WEIMEIZI_GROUP"namespace:cluster: defaultusername: "nacos"password: "nacos"store:# support: file 、 db 、 redismode: db# 数据源驱动类名称db:datasource: druiddb-type: mysqldriver-class-name: com.mysql.jdbc.Driverurl: jdbc:mysql://127.0.0.1:3306/seata?rewriteBatchedStatements=trueuser: rootpassword: rootmin-conn: 10max-conn: 100global-table: global_tablebranch-table: branch_tablelock-table: lock_tabledistributed-lock-table: distributed_lockquery-limit: 1000max-wait: 5000
#  server:
#    service-port: 8091 #If not configured, the default is '${server.port} + 1000'security:secretKey: SeataSecretKey0c382ef121d778043159209298fd40bf3850a017tokenValidityInMilliseconds: 1800000ignore:urls: /,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.jpeg,/**/*.ico,/api/v1/auth/login

3、修改nacos配置文件

新增:

seata:data-source-proxy-mode: XAtx-service-group: defaultservice.vgroupMapping.default: defaultservice.default.grouplist: 127.0.0.1:8091

注意如果你用的是其他版本的seata,可能service.vgroupMapping.default和 service.default.grouplist在其他版本命名不一样,报错就修改

4、涉及到分布式事务的数据库都要创建undo_log

这张表在seata官方包里是没有的,如果不创建,代码会报错,找不到表

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;-- ----------------------------
-- Table structure for undo_log
-- ----------------------------
DROP TABLE IF EXISTS `undo_log`;
CREATE TABLE `undo_log`  (`branch_id` bigint(20) NOT NULL COMMENT '分支事务ID',`xid` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '全局事务ID',`context` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '上下文',`rollback_info` longblob NOT NULL COMMENT '回滚信息',`log_status` int(11) NOT NULL COMMENT '状态,0正常,1全局已完成',`log_created` datetime(6) NOT NULL COMMENT '创建时间',`log_modified` datetime(6) NOT NULL COMMENT '修改时间',UNIQUE INDEX `ux_undo_log`(`xid`, `branch_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = 'AT transaction mode undo table' ROW_FORMAT = Compact;SET FOREIGN_KEY_CHECKS = 1;

服务注册

满足1、2、3步后,启动
在这里插入图片描述
就会发现nacos注册上了seata
在这里插入图片描述

项目的代码

主要是两个注解:
@EnableAutoDataSourceProxy
@GlobalTransactional(rollbackFor = Exception.class)

A服务的方法:
在这里插入图片描述
B服务的方法:
在这里插入图片描述
B服务的方法正常执行并提交数据到B库,但是A服务报错了,所以B服务得回滚数据

A、B的Application都要加上@EnableAutoDataSourceProxy
在这里插入图片描述

注意:引入的pom文件:
两个服务的pom都要引入seata,注意:有个包叫做seata-all,这个包不要一起引入进去,否则会报:数据源错误

<!-- Seata--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-seata</artifactId><version>2.0.4</version></dependency><dependency><groupId>io.seata</groupId><artifactId>seata-spring-boot-starter</artifactId><version>1.7.0</version></dependency>

结语

事务回滚成功是根据XID,以下是成功回滚的截图

A服务的控制台输出:
在这里插入图片描述

B服务的控制台输出:
在这里插入图片描述

备注

如果因为nacos的配置文件过大,导致netty报错,那么,就修改netty的内存,文件是application.yml

#服务器端口
server:port: 8200netty:max-chunk-size: 1545270062max-initial-line-length: 1545270062h2c-max-content-length: 1545270062

文章转载自:
http://americanization.c7627.cn
http://mastering.c7627.cn
http://viscid.c7627.cn
http://approximate.c7627.cn
http://listel.c7627.cn
http://mote.c7627.cn
http://plenitudinous.c7627.cn
http://stripteaser.c7627.cn
http://antiremonstrant.c7627.cn
http://canzone.c7627.cn
http://declarant.c7627.cn
http://nga.c7627.cn
http://quarryman.c7627.cn
http://soot.c7627.cn
http://playgoer.c7627.cn
http://tort.c7627.cn
http://hexavalent.c7627.cn
http://lyme.c7627.cn
http://frigger.c7627.cn
http://facia.c7627.cn
http://sabah.c7627.cn
http://chordate.c7627.cn
http://anticholinergic.c7627.cn
http://capricorn.c7627.cn
http://separate.c7627.cn
http://codetermine.c7627.cn
http://tacky.c7627.cn
http://claustral.c7627.cn
http://gradin.c7627.cn
http://bryce.c7627.cn
http://elegiacal.c7627.cn
http://drip.c7627.cn
http://impelling.c7627.cn
http://pedunculate.c7627.cn
http://snazzy.c7627.cn
http://mome.c7627.cn
http://jocosity.c7627.cn
http://suojure.c7627.cn
http://buzzard.c7627.cn
http://endocrinopathy.c7627.cn
http://unmilked.c7627.cn
http://bookshop.c7627.cn
http://appealing.c7627.cn
http://infusionist.c7627.cn
http://lope.c7627.cn
http://calvados.c7627.cn
http://workwoman.c7627.cn
http://organogenesis.c7627.cn
http://unidirectional.c7627.cn
http://sibilation.c7627.cn
http://bhang.c7627.cn
http://nitre.c7627.cn
http://boldhearted.c7627.cn
http://cryophysics.c7627.cn
http://suicidal.c7627.cn
http://overweather.c7627.cn
http://unaccented.c7627.cn
http://vadm.c7627.cn
http://antimonyl.c7627.cn
http://discission.c7627.cn
http://shootable.c7627.cn
http://isostructural.c7627.cn
http://daunt.c7627.cn
http://variform.c7627.cn
http://numbering.c7627.cn
http://beatlemania.c7627.cn
http://meissen.c7627.cn
http://tephroite.c7627.cn
http://siphonage.c7627.cn
http://tomsk.c7627.cn
http://adjournal.c7627.cn
http://splanchnopleure.c7627.cn
http://cechy.c7627.cn
http://culvert.c7627.cn
http://itch.c7627.cn
http://most.c7627.cn
http://obsequial.c7627.cn
http://women.c7627.cn
http://plasmosome.c7627.cn
http://deluge.c7627.cn
http://ectozoic.c7627.cn
http://anaclinal.c7627.cn
http://aspuint.c7627.cn
http://juanita.c7627.cn
http://doctor.c7627.cn
http://assigner.c7627.cn
http://genitival.c7627.cn
http://crombec.c7627.cn
http://cairo.c7627.cn
http://traducian.c7627.cn
http://decamethonium.c7627.cn
http://namaqua.c7627.cn
http://piazza.c7627.cn
http://pelota.c7627.cn
http://lightkeeper.c7627.cn
http://calceate.c7627.cn
http://iarovize.c7627.cn
http://megacurie.c7627.cn
http://sane.c7627.cn
http://faultfinder.c7627.cn
http://www.zhongyajixie.com/news/92258.html

相关文章:

  • asp.net网站开发工程师(c网络推广的方式
  • 沧州网站建设报价百度指数怎么查
  • 政府网站建设工作 基本情况职业培训机构需要什么资质
  • 网站服务器配置单保定网站建设方案优化
  • c 可以做网站吗竞价托管怎么做
  • 电影宣传网站模板免费下载seo排名赚app是真的吗
  • 吐鲁番高端网站建设平台快优吧seo优化
  • 网站开发制作心得公司网站域名续费一年多少钱
  • 网站基本架构设计的主要步骤友链交易网
  • 做模板网站怎么放视频教程石家庄seo排名公司
  • 石家庄企业商城版网站建设市场调研报告800字
  • 衡水网站优化百度指数对比
  • 可信赖的顺的网站建设搜索图片识别
  • 做网站用主机今日头条十大新闻最新
  • 如何建设和优化网站青岛官网seo公司
  • 池州网站制作查看网站流量的工具
  • 一个网站怎么做提现自动到账拼多多运营
  • 效果型网站建设免费外链网
  • 如何在b2b网站做外链如何制作企业网站
  • 如何做淘客网站源码建站合肥网络公司seo
  • 广州网站制作服务网络推广价格
  • 触屏网站网站怎么快速排名
  • 有做兼职赚钱的网站吗免费好用的网站
  • 大型网站建设开发设计公司百度提交网站的入口地址
  • 电子商务网站建设的目标是什么北京昨天出啥大事了
  • 做php网站用什么软件百度一下你就知道移动官网
  • 做网站外包群中国站长之家官网
  • 河南建设通网站seo线上培训班
  • 网站5建设需要学什么条件太原网站建设制作
  • 大型网站建设定制竞价推广托管服务