哪個(gè)網(wǎng)站有激光打標(biāo)業(yè)務(wù)做線上營(yíng)銷推廣方法
目錄
一、版本說(shuō)明
?二、建立Seata Server數(shù)據(jù)庫(kù)(TC-帶頭大哥的數(shù)據(jù)庫(kù))
三、業(yè)務(wù)庫(kù)建表
?四、安裝Seata-Server
?4.1 虛擬機(jī)里新建一個(gè)/opt/seate/seata-server文件夾,在seate文件夾下新建一個(gè)docker-compose.yml 文件
4.2 運(yùn)行容器
4.3 在nacos里配置seata的相關(guān)信息
4.4 啟動(dòng)
一、版本說(shuō)明
https://github.com/alibaba/spring-cloud-alibaba/wiki/%E7%89%88%E6%9C%AC%E8%AF%B4%E6%98%8E
?二、建立Seata Server數(shù)據(jù)庫(kù)(TC-帶頭大哥的數(shù)據(jù)庫(kù))
https://github.com/apache/incubator-seata/tree/v1.6.1/script/server/db
三、業(yè)務(wù)庫(kù)建表
在訂單業(yè)務(wù)數(shù)據(jù)庫(kù)和庫(kù)存業(yè)務(wù)數(shù)據(jù)庫(kù)里分別添加下表
https://github.com/apache/incubator-seata/blob/v1.6.1/script/client/at/db/mysql.sql
-- for AT mode you must to init this sql for you business database. the seata server not need it.
CREATE TABLE IF NOT EXISTS `undo_log`
(`branch_id` BIGINT NOT NULL COMMENT 'branch transaction id',`xid` VARCHAR(128) NOT NULL COMMENT 'global transaction id',`context` VARCHAR(128) NOT NULL COMMENT 'undo_log context,such as serialization',`rollback_info` LONGBLOB NOT NULL COMMENT 'rollback info',`log_status` INT(11) 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 KEY `ux_undo_log` (`xid`, `branch_id`)
) ENGINE = InnoDBAUTO_INCREMENT = 1DEFAULT CHARSET = utf8mb4 COMMENT ='AT transaction mode undo table';
?四、安裝Seata-Server
參考https://seata.apache.org/zh-cn/docs/v1.6/ops/deploy-by-docker-compose/#nacos%E6%B3%A8%E5%86%8C%E4%B8%AD%E5%BF%83db%E5%AD%98%E5%82%A8
?4.1 虛擬機(jī)里新建一個(gè)/opt/seate/seata-server文件夾,在seate文件夾下新建一個(gè)docker-compose.yml 文件
docker-compose.yml 文件如圖所示。
version: "3.1"
services:seata-server:image: seataio/seata-server:1.6.1ports:- "7091:7091"- "8091:8091"environment:- STORE_MODE=db# 以SEATA_IP作為host注冊(cè)seata server- SEATA_IP=192.168.11.82- SEATA_PORT=8091volumes:- "/usr/share/zoneinfo/Asia/Shanghai:/etc/localtime" #設(shè)置系統(tǒng)時(shí)區(qū)- "/usr/share/zoneinfo/Asia/Shanghai:/etc/timezone" #設(shè)置時(shí)區(qū)# 假設(shè)我們通過(guò)docker cp命令把資源文件拷貝到相對(duì)路徑`./seata-server/resources`中# 如有問(wèn)題,請(qǐng)閱讀上面的[注意事項(xiàng)]以及[使用自定義配置文件]- "./seata-server/resources:/seata-server/resources"
4.2 運(yùn)行容器
版本和配置文件保持一致
目的是找到 id
? docker run -d --rm seataio/seata-server:1.6.1
?拷貝文件
利用id拷貝文件(將容器里的文件拷貝到宿主機(jī))
docker cp 07d0:/seata-server/resources /opt/seata/seata-server/resources
?修改application.yml文件內(nèi)容
?
application.yml?
server:port: 7091spring:application:name: seata-serverconsole:user:username: seatapassword: seataseata:config:# support: nacos, consul, apollo, zk, etcd3type: nacosnacos:server-addr: 192.168.11.82:8848namespace: publicgroup: DEFAULT_GROUPusername: nacospassword: nacoscontext-path:##if use MSE Nacos with auth, mutex with username/password attribute#access-key:#secret-key:data-id: seataServer.propertiesregistry:# support: nacos, eureka, redis, zk, consul, etcd3, sofatype: nacosnacos:application: seata-serverserver-addr: 192.168.11.82:8848group: DEFAULT_GROUPnamespace: publiccluster: defaultusername: nacospassword: nacoscontext-path:##if use MSE Nacos with auth, mutex with username/password attribute#access-key:#secret-key:# server:# service-port: 8091 #If not configured, the default is '${server.port} + 1000'security:secretKey: SeataSecretKey0c382ef121d778043159209298fd40bf3850a017tokenValidityInMilliseconds: 1800000ignore:urls: /,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/api/v1/auth/loginlogging: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_logstash
4.3 在nacos里配置seata的相關(guān)信息
只需修改數(shù)據(jù)庫(kù)相關(guān)配置即可,數(shù)據(jù)庫(kù)名和第二個(gè)大標(biāo)題建的保持一致 seata_tc
#For details about configuration items, see https://seata.io/zh-cn/docs/user/configurations.html
#Transport configuration, for client and server
transport.type=TCP
transport.server=NIO
transport.heartbeat=true
transport.enableTmClientBatchSendRequest=false
transport.enableRmClientBatchSendRequest=true
transport.enableTcServerBatchSendResponse=false
transport.rpcRmRequestTimeout=30000
transport.rpcTmRequestTimeout=30000
transport.rpcTcRequestTimeout=30000
transport.threadFactory.bossThreadPrefix=NettyBoss
transport.threadFactory.workerThreadPrefix=NettyServerNIOWorker
transport.threadFactory.serverExecutorThreadPrefix=NettyServerBizHandler
transport.threadFactory.shareBossWorker=false
transport.threadFactory.clientSelectorThreadPrefix=NettyClientSelector
transport.threadFactory.clientSelectorThreadSize=1
transport.threadFactory.clientWorkerThreadPrefix=NettyClientWorkerThread
transport.threadFactory.bossThreadSize=1
transport.threadFactory.workerThreadSize=default
transport.shutdown.wait=3
transport.serialization=seata
transport.compressor=none#Transaction routing rules configuration, only for the client
# 此處的mygroup名字可以自定義,但是最好不要改保存默認(rèn)
service.vgroupMapping.mygroup=default
#If you use a registry, you can ignore it
service.default.grouplist=127.0.0.1:8091
service.enableDegrade=false
service.disableGlobalTransaction=false#Transaction rule configuration, only for the client
client.rm.asyncCommitBufferLimit=10000
client.rm.lock.retryInterval=10
client.rm.lock.retryTimes=30
client.rm.lock.retryPolicyBranchRollbackOnConflict=true
client.rm.reportRetryCount=5
client.rm.tableMetaCheckEnable=true
client.rm.tableMetaCheckerInterval=60000
client.rm.sqlParserType=druid
client.rm.reportSuccessEnable=false
client.rm.sagaBranchRegisterEnable=false
client.rm.sagaJsonParser=fastjson
client.rm.tccActionInterceptorOrder=-2147482648
client.tm.commitRetryCount=5
client.tm.rollbackRetryCount=5
client.tm.defaultGlobalTransactionTimeout=60000
client.tm.degradeCheck=false
client.tm.degradeCheckAllowTimes=10
client.tm.degradeCheckPeriod=2000
client.tm.interceptorOrder=-2147482648
client.undo.dataValidation=true
client.undo.logSerialization=jackson
client.undo.onlyCareUpdateColumns=true
server.undo.logSaveDays=7
server.undo.logDeletePeriod=86400000
client.undo.logTable=undo_log
client.undo.compress.enable=true
client.undo.compress.type=zip
client.undo.compress.threshold=64k
#For TCC transaction mode
tcc.fence.logTableName=tcc_fence_log
tcc.fence.cleanPeriod=1h#Log rule configuration, for client and server
log.exceptionRate=100#Transaction storage configuration, only for the server. The file, db, and redis configuration values are optional.
# 默認(rèn)為file,一定要改為db,我們自己的服務(wù)啟動(dòng)會(huì)連接不到seata
store.mode=db
store.lock.mode=db
store.session.mode=db
#Used for password encryption#These configurations are required if the `store mode` is `db`. If `store.mode,store.lock.mode,store.session.mode` are not equal to `db`, you can remove the configuration block.
# 修改mysql的配置
store.db.datasource=druid
store.db.dbType=mysql
store.db.driverClassName=com.mysql.cj.jdbc.Driver
store.db.url=jdbc:mysql://192.168.11.79:3306/seata_tc?useUnicode=true&characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useSSL=false
store.db.user=root
store.db.password=root123
store.db.minConn=5
store.db.maxConn=30
store.db.globalTable=global_table
store.db.branchTable=branch_table
store.db.distributedLockTable=distributed_lock
store.db.queryLimit=100
store.db.lockTable=lock_table
store.db.maxWait=5000#Transaction rule configuration, only for the server
server.recovery.committingRetryPeriod=1000
server.recovery.asynCommittingRetryPeriod=1000
server.recovery.rollbackingRetryPeriod=1000
server.recovery.timeoutRetryPeriod=1000
server.maxCommitRetryTimeout=-1
server.maxRollbackRetryTimeout=-1
server.rollbackRetryTimeoutUnlockEnable=false
server.distributedLockExpireTime=10000
server.xaerNotaRetryTimeout=60000
server.session.branchAsyncQueueSize=5000
server.session.enableBranchAsyncRemove=false
server.enableParallelRequestHandle=false#Metrics configuration, only for the server
metrics.enabled=false
metrics.registryType=compact
metrics.exporterList=prometheus
metrics.exporterPrometheusPort=9898
4.4 啟動(dòng)
1.先cd 到seata文件夾,再執(zhí)行下面的命令
docker-compose up -d
去nacos里查看服務(wù)是否啟動(dòng)
?訪問(wèn) 端口為7091