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

一个seo良好的网站其主要流量往往来自网站 视觉上

一个seo良好的网站其主要流量往往来自,网站 视觉上,添加数据库wordpress,佛山网站建设哪个目录 一、Seata 架构 1.1、Seata 架构重要角色 1.2、部署 TC 服务 1.2.1、前言 1.2.2、下载 seata-server 包#xff0c;解压 1.2.3、修改配置 1.2.4、在 nacos 中添加配置 1.2.5、创建数据库表 1.2.6、启动 TC 服务 1.3、微服务集成 Seata 1.3.1、引入依赖 1.3.2、…目录 一、Seata 架构 1.1、Seata 架构重要角色 1.2、部署 TC 服务 1.2.1、前言 1.2.2、下载 seata-server 包解压 1.2.3、修改配置 1.2.4、在 nacos 中添加配置 1.2.5、创建数据库表 1.2.6、启动 TC 服务 1.3、微服务集成 Seata 1.3.1、引入依赖 1.3.2、修改配置文件添加 Seata 一、Seata 架构 1.1、Seata 架构重要角色 Seata 事务管理中有以下三个重要的角色 TC (Transaction Coordinator) - 事务协调者维护全局和分支事务的状态协调全局事务提交或回滚。TM (Transaction Manager) - 事务管理器定义全局事务的范围、开始全局事务、提交或回滚全局事务。RM (Resource Manager) - 资源管理器管理分支事务处理的资源与TC交谈以注册分支事务和报告分支事务的状态并驱动分支事务提交或回滚。 三者之间的关系 1. 分布式事务有一个入口方法会去调用多个微服务每调用一个微服务就相当于一个分支事务.  因此整个入口方法就定义全局事务的范围TM 就会去监控这个入口的方法也就知道这个事务里有多少分支事务. 2. 当入口方法被执行时TM 会首先拦截当前这个执行的动作然后向 TC 发送一个请求注册全局事务.  那么接下来就可以去执行这个入口的业务逻辑了进一步的分支事务也就开始执行了. 3. RM 此时就要上场了他会在分支事务执行的时候拦截下来然后向 TC 注册这个分支事务告诉他说“我是属于哪个全局事务这里有一个分支要执行了啊”.   然后 RM 就可以执行这个业务的 sql为甚叫就资源管理器因为资源指的是数据库RM 就需要执行sql.  执行完后再把当前分支事务的状态报告给 TC执行成功了还是回滚了.  这样一来TC 就知道每一个分支事务的状态了.  4. 等到 TM  这边的入口方法全部执行完毕了就可以提交这个事务到 TC 了告诉他说“我这边处理完了接下来看你怎么办吧~”. 之后 TC 就会去检查刚刚注册的每一个分支事务的状态如果都是成功的就告诉这些 RM 说“你们去提交吧”.  如果 TC 这边检查到有失败的那就让他们全部回滚. Ps以上只是分布式事务解决方案的基本模型不是最终的解决方案. 在后续的章节中也会讲到的. 1.2、部署 TC 服务 1.2.1、前言 刚刚我们已经知道了 Seata 中三个重要角色其中 tm 和 rm 是对业务的管理而  tc 则是脱离业务之外的独立服务需要协调 tm 和 rm协调全局事务和分支事务. 这里我就来带大家搭建一下 Seata 的 TC 服务. 1.2.2、下载 seata-server 包解压 首先我们要下载 seata-server 包官网地址如下 http://seata.io Ps在非中文目录解压这个 zip 包. 1.2.3、修改配置 修改 conf 目录下的 registry.conf 文件. registry {# tc服务的注册中心类这里选择nacos也可以是eureka、zookeeper等type nacosnacos {# seata tc 服务注册到 nacos的服务名称可以自定义application seata-tc-serverserverAddr 127.0.0.1:8848group DEFAULT_GROUPnamespace cluster SHusername nacospassword nacos} }config {# 读取tc服务端的配置文件的方式这里是从nacos配置中心读取这样如果tc是集群可以共享配置type nacos# 配置nacos地址等信息nacos {serverAddr 127.0.0.1:8848namespace group SEATA_GROUPusername nacospassword nacosdataId seataServer.properties} } 1.2.4、在 nacos 中添加配置 为了让 TC 服务的集群可以共享配置这里我们选择了 nacos 做为统一的配置中心. 因此服务端配置文件 seataServer.properties 文件需要在 nacos 中配置好. PsDataID 和 Group 要对应 registry.conf 文件中的配置  配置内容如下 # 数据存储方式db代表数据库 store.modedb store.db.datasourcedruid store.db.dbTypemysql store.db.driverClassNamecom.mysql.jdbc.Driver store.db.urljdbc:mysql://127.0.0.1:3306/seata?useUnicodetruerewriteBatchedStatementstrue store.db.userroot store.db.passwordjaodfhgaduqheqh82043ht^*(%$ioueryg0gu3q0gq3gusaioy8tq94gyu80q32g store.db.minConn5 store.db.maxConn30 store.db.globalTableglobal_table store.db.branchTablebranch_table store.db.queryLimit100 store.db.lockTablelock_table store.db.maxWait5000 # 事务、日志等配置 server.recovery.committingRetryPeriod1000 server.recovery.asynCommittingRetryPeriod1000 server.recovery.rollbackingRetryPeriod1000 server.recovery.timeoutRetryPeriod1000 server.maxCommitRetryTimeout-1 server.maxRollbackRetryTimeout-1 server.rollbackRetryTimeoutUnlockEnablefalse server.undo.logSaveDays7 server.undo.logDeletePeriod86400000# 客户端与服务端传输方式 transport.serializationseata transport.compressornone # 关闭metrics功能提高性能 metrics.enabledfalse metrics.registryTypecompact metrics.exporterListprometheus metrics.exporterPrometheusPort9898 Ps以上只有数据的存储方式需要我们自己配置其他的都可以不配置走默认配置上面配置的原因是方便以后修改默认配置.   1.2.5、创建数据库表 TC 服务在管理分布式事务时需要记录事务相关数据到数据库因此需要提前创建好这些表 分支事务表如下 DROP TABLE IF EXISTS branch_table; CREATE TABLE branch_table (branch_id bigint(20) NOT NULL,xid varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,transaction_id bigint(20) NULL DEFAULT NULL,resource_group_id varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,resource_id varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,branch_type varchar(8) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,status tinyint(4) NULL DEFAULT NULL,client_id varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,application_data varchar(2000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,gmt_create datetime(6) NULL DEFAULT NULL,gmt_modified datetime(6) NULL DEFAULT NULL,PRIMARY KEY (branch_id) USING BTREE,INDEX idx_xid(xid) USING BTREE ) ENGINE InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci ROW_FORMAT Compact; 全局事务表如下 DROP TABLE IF EXISTS global_table; CREATE TABLE global_table (xid varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,transaction_id bigint(20) NULL DEFAULT NULL,status tinyint(4) NOT NULL,application_id varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,transaction_service_group varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,transaction_name varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,timeout int(11) NULL DEFAULT NULL,begin_time bigint(20) NULL DEFAULT NULL,application_data varchar(2000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,gmt_create datetime NULL DEFAULT NULL,gmt_modified datetime NULL DEFAULT NULL,PRIMARY KEY (xid) USING BTREE,INDEX idx_gmt_modified_status(gmt_modified, status) USING BTREE,INDEX idx_transaction_id(transaction_id) USING BTREE ) ENGINE InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci ROW_FORMAT Compact;SET FOREIGN_KEY_CHECKS 1; 1.2.6、启动 TC 服务 Windows 系统进入 bin 目录运行 seata-server.bat 即可. 启动完成后可以看到默认端口是 8091当然这个端口不是给你访问的而是给 tm 和 rm 访问的. 之后打开浏览器输入 nacos 地址localhost:8848/nacos进入服务列表页就可以看到 seata-tc-server 的信息表明注册成功如下. 1.3、微服务集成 Seata 1.3.1、引入依赖 引入的 seata 依赖中默认的 seate starter 依赖版本太低因此通过 exclusion 排除引入 seata starter 1.4.2 版本. dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-starter-alibaba-seata/artifactIdexclusions!--版本较低1.3.0因此排除--exclusionartifactIdseata-spring-boot-starter/artifactIdgroupIdio.seata/groupId/exclusion/exclusions /dependency !--seata starter 采用1.4.2版本-- dependencygroupIdio.seata/groupIdartifactIdseata-spring-boot-starter/artifactIdversion${seata.version}/version /dependency 1.3.2、修改配置文件添加 Seata 配置 application.yml让微服务通过注册中心找到 seata-tc-server. 要找到 nacos 服务就需要配置namespace group serviceName cluster 其中 cluster 的配置需要注意通过映射配置. 内容如下 seata:registry: # TC服务注册中心的配置微服务根据这些信息去注册中心获取tc服务地址# 参考tc服务自己的registry.conf中的配置type: nacosnacos: # tcserver-addr: 127.0.0.1:8848namespace: group: DEFAULT_GROUPapplication: seata-tc-server # tc服务在nacos中的服务名称tx-service-group: seata-demo # 事务组根据这个获取tc服务的cluster名称service:vgroup-mapping: # 事务组与TC服务cluster的映射关系seata-demo: SH
http://www.huolong8.cn/news/166670/

相关文章:

  • 企业做网站哪个最好wordpress content.php
  • 同企网站建设做网站抖音营销推广怎么做
  • 百度商桥怎么添加到网站单位网站服务的建设及维护
  • 牛栏前网站建设wordpress json 登陆
  • 潍坊英文网站建设哪些是用vue做的网站
  • 凡科建站是不是关闭企业网站做网站广告费
  • 群晖系统可以做网站吗别墅装修案例
  • 做电影网站需要的服务器配置做游戏都需要什么网站吗
  • 重庆承越网站建设地址我们不是做网站的
  • 建设部网站官网办事厅织梦的网站收录不好
  • 网站建设书籍pk10网站怎么做
  • 广州做网站平台上海网站建设制作百橙
  • 产品类型 速成网站国外网站布局
  • 商丘seo公司找25火星优化方案2021版英语答案
  • 网站认证要钱wordpress applyfilters
  • 网站怎么设置手机模板管理国际网站排名查询
  • 网站添加微信支付功能网站建设的发展历程
  • 购物网站开发教案网站是先解析还是先备案
  • 昆明猫咪科技网站建设公司wordpress gitg
  • 哪里做公司网站网站外链是友情连接吗
  • 卖护肤在哪个网站做宣传好wordpress 批量标签
  • 网站开发主流方法邯郸经济技术开发区
  • 怎样找竞争对手网站景安 怎么把网站做别名
  • 威联通做网站朔州城市建设网站
  • 汕头网站建设工作泰安新闻频道在线直播
  • 建设个人网站流程河南网络优化服务
  • 企业做网站的好处有哪些大连网龙网络科技
  • 盐城网站优化工作室如何建造免费的网站
  • 网站续费模板怎么设计一个软件
  • 徐州网站建设网络推广网站优化费用报价明细