做网站公司有哪些深圳市建设信息网

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

做网站公司有哪些,深圳市建设信息网,免费收录软文网站,网站的构架与组成Linux中安装seata 一、准备1、环境2、下载3、上传到服务器4、解压 二、配置1、备份配置文件2、导入sql3、修改配置前4、修改配置后5、在nacos中配置 三、使用1、启动2、关闭 一、准备 1、环境 因为要在 nacos 中配置#xff0c;要求安装并启动 nacos 。可以参考这篇博客。 … Linux中安装seata 一、准备1、环境2、下载3、上传到服务器4、解压 二、配置1、备份配置文件2、导入sql3、修改配置前4、修改配置后5、在nacos中配置 三、使用1、启动2、关闭 一、准备 1、环境 因为要在 nacos 中配置要求安装并启动 nacos 。可以参考这篇博客。 我的 nacos 版本是 2.2.1 演示安装的 seata 版本是 1.6.1 。 2、下载 seata的下载地址如下 https://seata.apache.org/zh-cn/unversioned/download/seata-server 开发环境的 seata 的版本为 1.6.1 为了保证版本一致这里也下载 1.6.1 版本。 3、上传到服务器 这里上传到 /usr/local/seata 目录 4、解压 解压 seata 使用如下命令 tar -zxvf seata-server-1.6.1.tar.gz解压后的目录为 seata 这里将它修改为 seata-1.6.1 命令如下 mv seata seata-1.6.1二、配置 配置文件在根目录的 conf 文件夹下这里是 /usr/local/seata/seata-1.6.1/conf 目录
1、备份配置文件 先备份一下配置文件防止误修改命令如下 cp application.yml application_bk.yml2、导入sql 这里选用 mysql 存储模式所以导入 mysql 的sql数据库脚本的地址如下 https://github.com/apache/incubator-seata/tree/master/script/server/db 先创建一个数据库名称可以自定义这里为 seata 命令如下 CREATE DATABASE seata然后再执行sql这是对应的sql – ——————————– The script used when storeMode is db ——————————– – the table to store GlobalSession data CREATE TABLE IF NOT EXISTS global_table (xid VARCHAR(128) NOT NULL,transaction_id BIGINT,status TINYINT NOT NULL,application_id VARCHAR(32),transaction_service_group VARCHAR(32),transaction_name VARCHAR(128),timeout INT,begin_time BIGINT,application_data VARCHAR(2000),gmt_create DATETIME,gmt_modified DATETIME,PRIMARY KEY (xid),KEY idx_status_gmt_modified (status , gmt_modified),KEY idx_transaction_id (transaction_id) ) ENGINE InnoDBDEFAULT CHARSET utf8mb4;– the table to store BranchSession data CREATE TABLE IF NOT EXISTS branch_table (branch_id BIGINT NOT NULL,xid VARCHAR(128) NOT NULL,transaction_id BIGINT,resource_group_id VARCHAR(32),resource_id VARCHAR(256),branch_type VARCHAR(8),status TINYINT,client_id VARCHAR(64),application_data VARCHAR(2000),gmt_create DATETIME(6),gmt_modified DATETIME(6),PRIMARY KEY (branch_id),KEY idx_xid (xid) ) ENGINE InnoDBDEFAULT CHARSET utf8mb4;– the table to store lock data CREATE TABLE IF NOT EXISTS lock_table (row_key VARCHAR(128) NOT NULL,xid VARCHAR(128),transaction_id BIGINT,branch_id BIGINT NOT NULL,resource_id VARCHAR(256),table_name VARCHAR(32),pk VARCHAR(36),status TINYINT NOT NULL DEFAULT 0 COMMENT 0:locked ,1:rollbacking,gmt_create DATETIME,gmt_modified DATETIME,PRIMARY KEY (row_key),KEY idx_status (status),KEY idx_branch_id (branch_id),KEY idx_xid (xid) ) ENGINE InnoDBDEFAULT CHARSET utf8mb4;CREATE TABLE IF NOT EXISTS distributed_lock (lock_key CHAR(20) NOT NULL,lock_value VARCHAR(20) NOT NULL,expire BIGINT,primary key (lock_key) ) ENGINE InnoDBDEFAULT CHARSET utf8mb4;INSERT INTO distributed_lock (lock_key, lock_value, expire) VALUES (AsyncCommitting, , 0); INSERT INTO distributed_lock (lock_key, lock_value, expire) VALUES (RetryCommitting, , 0); INSERT INTO distributed_lock (lock_key, lock_value, expire) VALUES (RetryRollbacking, , 0); INSERT INTO distributed_lock (lock_key, lock_value, expire) VALUES (TxTimeoutCheck, , 0);如果是AT模式AT模式也是seata建议的模式需要加上这张事务回滚表具体sql如下 DROP TABLE IF EXISTS undo_log; CREATE TABLE undo_log (branch_id bigint(0) NOT NULL COMMENT branch transaction id,xid varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT global transaction id,context varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT undo_log context,such as serialization,rollback_info longblob NOT NULL COMMENT rollback info,log_status int(0) NOT NULL COMMENT 0:normal status,1:defense status,log_created datetime(6) NOT NULL COMMENT create datetime,log_modified datetime(6) NOT NULL COMMENT modify datetime,UNIQUE INDEX ux_undo_log(xid, branch_id) USING BTREE ) ENGINE InnoDB CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci COMMENT AT transaction mode undo table ROW_FORMAT Dynamic;3、修改配置前 主要修改这部分 这是原来的完整配置

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/seataextend:logstash-appender:destination: 127.0.0.1:4560kafka-appender:bootstrap-servers: 127.0.0.1:9092topic: logback_to_logstashconsole:user:username: seatapassword: seataseata:config:# support: nacos, consul, apollo, zk, etcd3type: fileregistry:# support: nacos, eureka, redis, zk, consul, etcd3, sofatype: filestore:# support: file 、 db 、 redismode: file

server:

service-port: 8091 #If not configured, the default is ${server.port} 1000security:secretKey: SeataSecretKey0c382ef121d778043159209298fd40bf3850a017tokenValidityInMilliseconds: 1800000ignore:urls: /,//*.css,//.js,/**/.html,//*.map,//.svg,/**/.png,//*.ico,/console-fe/public/,/api/v1/auth/login4、修改配置后

已经在修改的地方做好了注释初次配置不建议跳过

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/seataextend:logstash-appender:destination: 127.0.0.1:4560kafka-appender:bootstrap-servers: 127.0.0.1:9092topic: logback_to_logstashconsole:user:username: seatapassword: seataseata:config:# support: nacos, consul, apollo, zk, etcd3type: nacosnacos:server-addr: 127.0.0.1:8848 # nacos的访问地址因为是在docker中ip地址改为宿主机地址namespace:group: SEATA_GROUP # nacos的分组username: nacos # nacos的用户名password: nacos # nacos的密码context-path:##if use MSE Nacos with auth, mutex with username/password attribute#access-key:#secret-key:data-id: seata.properties # nacos中的配置文件名称registry:# support: nacos, eureka, redis, zk, consul, etcd3, sofatype: nacosnacos:application: seata-server # seata启动后在nacos的服务名server-addr: 127.0.0.1:8848 # nacos的访问地址如果是在docker中ip地址改为宿主机地址group: SEATA_GROUP # nacos的分组namespace:cluster: default # 这个参数在每个微服务seata时会用到username: nacos # nacos的用户名password: nacos # nacos的密码context-path:##if use MSE Nacos with auth, mutex with username/password attribute#access-key:#secret-key:store:# support: file 、 db 、 redismode: dbdb:datasource: druiddb-type: mysqldriver-class-name: com.mysql.jdbc.Driverurl: jdbc:mysql://127.0.0.1:3306/seata?characterEncodingutf8connectTimeout10000socketTimeout30000autoReconnecttrueuseUnicodetrueuseSSLfalseuser: rootpassword: 123456min-conn: 10 # db 模式数据库初始连接数max-conn: 100 # db 模式数据库最大连接数global-table: global_table # db 模式全局事务表名branch-table: branch_table # db 模式分支事务表名lock-table: lock_table # db 模式全局锁表名distributed-lock-table: distributed_lock # db 模式 Sever 端事务管理全局锁存储表名query-limit: 1000 # db 模式查询全局事务一次的最大条数默认100max-wait: 5000 # db 模式获取连接时最大等待时间默认5000

server:

service-port: 8091 #If not configured, the default is ${server.port} 1000security:secretKey: SeataSecretKey0c382ef121d778043159209298fd40bf3850a017tokenValidityInMilliseconds: 1800000ignore:urls: /,//*.css,//.js,/**/.html,//*.map,//.svg,/**/.png,//*.ico,/console-fe/public/,/api/v1/auth/login5、在nacos中配置

需要在 nacos 中创建 SEATA_GROUP 分组增加名为 seata.properties 的配置 具体配置如下 store.modedb store.db.datasourcedruid store.db.dbTypemysql store.db.driverClassNamecom.mysql.cj.jdbc.Driver store.db.urljdbc:mysql://127.0.0.1:3306/seata?useUnicodetrue store.db.userroot store.db.password123456 store.db.minConn5 store.db.maxConn30 store.db.globalTableglobal_table store.db.branchTablebranch_table store.db.queryLimit100 store.db.lockTablelock_table store.db.maxWait5000三、使用 1、启动 启动 seata 需要到根目录下的 bin 目录这里是 /usr/local/seata/seata-1.6.1/bin 使用如下命令 sh seata-server.sh然后到 nacos 中查看 在浏览器中访问 可以看到 seata 已经启动。 2、关闭 因为 seata 没有提供关闭的命令至少我这版本没有先查询 seata 的进程id命令如下 ps -ef | grep seata然后再杀掉这个进程命令如下 kill -9 370711回到 nacos 发现 seata 服务也消失了 成功关闭。