首页 > 其他分享 >springboot整合seata1.5.2+nacos2.1.1(未完成)

springboot整合seata1.5.2+nacos2.1.1(未完成)

时间:2022-09-28 16:45:54浏览次数:55  
标签:seata nacos2.1 seata1.5 db nacos server mysql 1000 springboot

一、前言

  Seata出现前,大部分公司使用的都是TCC或者MQ(RocketMq)等来解决分布式事务的问题,TCC代码编写复杂,每个业务均需要实现三个入口,侵入性强,RocketMQ保证的是最终一致性。

二、环境准备

1、nacos:(这里采用最新版本2.1.1)

  下载地址:https://github.com/alibaba/nacos/releases

  官方文档:https://nacos.io/zh-cn/docs/what-is-nacos.html

2、seata:(这里采用最新版本1.5.2)

  下载地址:https://github.com/seata/seata/releases

  官方文档:http://seata.io/zh-cn/docs/overview/what-is-seata.html

3、其它

  redis、maven、mysql等(自行安装)

三、项目搭建(这里仅作本地测试,均采用单机模式)

1、mysql 自行下载、安装,创建数据库seata、nacos、server1、server2

2、nacos

  ①解压压缩包,进入nacos目录

  ②进入conf目录,拷贝nacos-mysql.sql到数据库nacos初始化

  ③打开application.properties,找到如下配置,放开注释,修改为本地连接

### If use MySQL as datasource:
spring.datasource.platform=mysql

### Count of DB:
db.num=1

### Connect URL of DB:
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=nacos
db.password.0=nacos

  ④进入bin目录,执行cmd命令," .\startup.cmd -m standalone",观察到如下日志,无报错,即启动成功

  ⑤上图标出的即为nacos管理界面的地址,账号密码均为nacos,登录成功

  ⑥新建命令空间,我这里加的"yhc",大家可以自定义,不过后面seata和server的配置需要对应上,后文也会提到。

  ⑦新建配置"seata.yml",这个配置可以从seata官网demo中找到,注意只用修改db连接即可。

metrics:
  enabled: false
  exporterList: prometheus
  exporterPrometheusPort: 9898
  registryType: compact
server:
  maxCommitRetryTimeout: -1
  maxRollbackRetryTimeout: -1
  recovery:
    asynCommittingRetryPeriod: 1000
    committingRetryPeriod: 1000
    rollbackingRetryPeriod: 1000
    timeoutRetryPeriod: 1000
  rollbackRetryTimeoutUnlockEnable: false
  undo:
    logDeletePeriod: 86400000
    logSaveDays: 7
store:
  db:
    branchTable: branch_table
    datasource: druid
    dbType: mysql
    driverClassName: com.mysql.cj.jdbc.Driver
    globalTable: global_table
    lockTable: lock_table
    maxConn: 30
    maxWait: 5000
    minConn: 5
    password: root
    queryLimit: 100
    url: jdbc:mysql://127.0.0.1:3306/seata?useUnicode=true&rewriteBatchedStatements=true&useSSL=false
    user: root
  mode: db
transport:
  compressor: none
  serialization: seata

3、seata

  ①解压压缩包,进入seata目录

  ②进入/script/server/db目录,拷贝mysql.sql到数据库seata初始化

  ③进入/conf目录,修改application.yml配置文件,配置中心和注册中心改为nacos

seata:
  config:
    # support: nacos, consul, apollo, zk, etcd3
    type: nacos
    nacos:
      server-addr: localhost:8848
      namespace: c23f9030-953e-46bb-8c6e-0bf4a8227a8c
      group: yhc
      username: nacos
      password: nacos
      data-id: seata.yml
  registry:
    # support: nacos, eureka, redis, zk, consul, etcd3, sofa
    type: nacos
    nacos:
      application: seata-server
      server-addr: localhost:8848
      namespace: c23f9030-953e-46bb-8c6e-0bf4a8227a8c
      group: yhc
      username: nacos
      password: nacos

  ④进入/bin目录,双击执行seata-server.bat启动

  ⑤打开nacos列表,观察seata服务注册成功

 

4、服务接入(更新中...)

标签:seata,nacos2.1,seata1.5,db,nacos,server,mysql,1000,springboot
From: https://www.cnblogs.com/yhc-910/p/16735445.html

相关文章

  • 创建springboot+maven项目
    参考:https://www.cnblogs.com/ygfsy/p/13675122.html 目录结构-->在项目下创建一个Control包,用于返回给前端的接口   测试接口是否通 ......
  • SpringBoot 整合RabbitMq 实战
    SpringBoot整合RabbitMq实战参考官网:​​https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-messaging.html#boot-features-amqp​​spri......
  • Springboot 外置配置详解
    Springboot外置配置springBoot自动配置的bean提供了300多个用于微调的属性.当调整设置时,只需要在环境变量,Java系统属性,JNDI,命令行参数,属性文件进行配置就好了.举例......
  • 玩转SpringBoot之定时任务
    玩转SpringBoot之定时任务使用SpringBoot创建定时任务非常简单,目前主要有以下三种创建方式:一、基于注解(@Scheduled)二、基于接口(SchedulingConfigurer)前者相信大家......
  • 深入学习SpringBoot
    1.快速上手SpringBoot1.1SpringBoot入门程序开发SpringBoot是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的初始搭建以及开发过程1.1.1IDEA创建Sp......
  • SpringBoot热部署
    一、引言(devtools)在开发过程中,由于每次修改完项目中的类都需要重启服务才能看到运行的结果,对于开发调试很不友好,浪费时间,引入devtools工具可以快速启动项目,无需再次重启......
  • 计算机毕设选题新颖推荐 springboot+vue心理咨询预约系统 ssm校园心理咨询平台 java心
    ......
  • springboot+websocket
    springboot+websocket:先引入websocket的依赖包<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-we......
  • SpringBoot整合MyBatis
    配置准备引入依赖在pom.xml文件中引入数据库和mybatis相关依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-j......
  • SpringBoot 常用读取配置文件的 3 种方法!
    我们在SpringBoot框架进行项目开发中该如何优雅的读取配置呢?或者说对于一些List或者Map应该如何配置呢?本篇主要解决如下几个问题:1、SpringBoot有哪些常用的读取配置文件......