Seata使用ZooKeeper作为注册中心

预备工作

当您准备将 Seata 注册到 ZooKeeper 之前,请确保已经启动 ZooKeeper 服务。如果您尚且不熟悉 ZooKeeper 的基本使用的话,可先行参考 ZooKeeper官方文档

快速上手

Seata 融合 ZooKeeper 注册中心的操作步骤非常简单,大致步骤可分为"Server端配置"以及"Client端配置"。

Server端配置

下载 Seata 2.0.0 release 并解压

/conf/application.yaml 中修改对应注册中心,其余配置参考

复制代码
seata:
  registry:
    type: zk
    zk:
      cluster: default
      server-addr: 127.0.0.1:2181
      session-timeout: 6000
      connect-timeout: 2000
      username: ""
      password: ""

执行 /bin/seata-server.bat (Windows) 或 /bin/seata-server.sh (Unix) 启动 Seata,服务将运行在本地 8091 端口上,打开ZooKeeper客户端命令行,输入 ls /registry/zk/default,查看到节点地址即注册成功(如下)

复制代码
[zk: localhost:2181(CONNECTED) 1] ls /registry/zk/default
[127.0.0.1:8091]

Client端配置

如果使用io.seata:seata-spring-boot-starter依赖,需要在 application.yml 中加入如下zookeeper的配置项,其余配置参考

复制代码
seata:
  registry:
    type: zk
    zk:
      server-addr: 127.0.0.1:2181
  # 有关事务分组,请参考 https://seata.apache.org/zh-cn/docs/user/txgroup/transaction-group
      session-timeout: 6000
      connect-timeout: 2000
      username:
      password:
  tx-service-group: default_tx_group
  service:
    # 事务分组与集群映射关系
    vgroup-mapping:
      default_tx_group: default

或者使用io.seata:seata-all依赖,则需要在file.conf中加入事务分组与集群映射关系:

复制代码
  vgroupMapping.default_tx_group = "default"

并在registry.conf文件中加入zookeeper的配置项,其余配置参考

复制代码
  zk {
    serverAddr = "127.0.0.1:2181"
    sessionTimeout = 6000
    connectTimeout = 2000
    username = ""
    password = ""
  }

Client 配置完成后启动应用并稍待片刻,即可正式体验 Seata 服务

相关推荐
源代码•宸3 小时前
前置准备:定时微服务背景和现状
开发语言·经验分享·后端·微服务·云原生·架构·golang
实战派K8S&DB3 小时前
如何在内网配置 TiDB 数据库 Agent
数据库·人工智能·分布式·tidb
实战派K8S&DB3 小时前
《基于 Dify + FastAPI + PyTiDB 搭建大模型驱动的 TiDB 智能运维 Agent》
运维·数据库·分布式·云原生·tidb·fastapi
小白羊丨4 小时前
Kafka任务重试、退避与失败恢复怎么做?
分布式·kafka
码云数智-园园7 小时前
我为什么从微服务退回单体架构
微服务·云原生·架构
源代码•宸8 小时前
前置准备:定时微服务有什么价值
经验分享·后端·微服务·云原生·架构
IT大白鼠9 小时前
Kubernetes 核心资源ReplicaSet 控制器详解
云原生·容器·kubernetes
jyOverQ10 小时前
RabbitMQ 延迟消息怎么实现?TTL 与死信队列
分布式·后端·rabbitmq·ruby
池以遇10 小时前
云原生——k8s中的微服务
微服务·云原生·kubernetes