我的编程空间,编程开发者的网络收藏夹
学习永远不晚

seata docker高可用部署是什么意思

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

seata docker高可用部署是什么意思

本篇内容主要讲解“seata docker高可用部署是什么意思”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“seata docker高可用部署是什么意思”吧!

版本

2
官方文档
dockerhub

启动

通过环境变量SEATA_CONFIG_NAME指定配置文件位置/root/seata-config/registry.conf

docker run --name seata-server \        -p 8091:8091 \        -e SEATA_CONFIG_NAME=file:/root/seata-config/registry \         -v /User/seata/config:/root/seata-config  \        seataio/seata-server

配置文件

实现高可用需要依赖注册中心,配置中心,数据库
registry.conf

registry {  type = "nacos"  nacos {    application = "seata-server"    serverAddr = "192.168.199.2"    namespace = "test"    group = "SEATA_GROUP"    cluster = "default"    username = ""    password = ""  }}config {  type = "nacos"    nacos {    serverAddr = "192.168.199.2"    namespace = "test"    group = "SEATA_GROUP"    username = ""    password = ""  }}

NACOS配置

注:使用nacos配置,需要在对应分组(SEATA_GROUP)下针对配置项目逐条配置文本值,而不是创建包含所有配置的properties文件,可以使用官方源码中的脚本导入
全部可用配置参考

使用数据库

store.mode=db
store.db.datasource=druid
store.db.dbType=mysql
store.db.driverClassName=com.mysql.jdbc.Driver
store.db.url=jdbc:mysql://192.168.199.2:3306/seata?useUnicode=true&rewriteBatchedStatements=true
store.db.user=root
store.db.password=123456

创建数据库

建库脚本

-- -------------------------------- The script used when storeMode is 'db' ---------------------------------- the table to store GlobalSession dataCREATE 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_gmt_modified_status` (`gmt_modified`, `status`),    KEY `idx_transaction_id` (`transaction_id`)) ENGINE = InnoDB  DEFAULT CHARSET = utf8;-- the table to store BranchSession dataCREATE 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 = InnoDB  DEFAULT CHARSET = utf8;-- the table to store lock dataCREATE 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),    `gmt_create`     DATETIME,    `gmt_modified`   DATETIME,    PRIMARY KEY (`row_key`),    KEY `idx_branch_id` (`branch_id`)) ENGINE = InnoDB  DEFAULT CHARSET = utf8;

异常处理

客户端报错 Data too long for column ‘application_id'

io.seata.core.exception.TmTransactionException: TransactionException[begin global request failed. xid=null, msg=Data truncation: Data too long for column ‘application_id' at row 1]
at io.seata.tm.DefaultTransactionManager.begin(DefaultTransactionManager.java:55) ~[seata-all-1.3.0.jar:1.3.0]
at io.seata.tm.api.DefaultGlobalTransaction.begin(DefaultGlobalTransaction.java:104) ~[seata-all-1.3.0.jar:1.3.0]
at io.seata.tm.api.TransactionalTemplate.beginTransaction(TransactionalTemplate.java:175) ~[seata-all-1.3.0.jar:1.3.0]

seata数据库global_table.application_id字段默认长度为varchar(32),如果客户端应用ID超长则报此错
手动修改字段类型增加长度即可

到此,相信大家对“seata docker高可用部署是什么意思”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

seata docker高可用部署是什么意思

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

seata docker高可用部署是什么意思

本篇内容主要讲解“seata docker高可用部署是什么意思”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“seata docker高可用部署是什么意思”吧!版本1.4.2官方文档dockerh
2023-06-20

mysql部署是什么意思

mysql 部署是安装和管理 mysql 数据库软件的过程,涉及选择平台、安装 mysql、配置设置、启动和停止服务以及维护。部署类型包括单机部署、主从复制和负载均衡。考虑因素包括应用程序需求、预算、可用性要求、安全和合规性。什么是 MyS
mysql部署是什么意思
2024-06-02

redis高可用什么意思

redis 高可用性是指 redis 集群能在故障或中断时仍能提供服务,保证数据完整和可用。实现 redis 高可用性的方法有:主从复制:创建多个 redis 从节点,由主节点负责写入和复制数据。哨兵:监控 redis 主从节点健康状态,当
redis高可用什么意思
2024-06-12

Django高可用部署的方法是什么

Django的高可用部署通常使用以下方法之一:1. 使用负载均衡器:在应用服务器之前使用负载均衡器,可以将流量分发到多个应用服务器上,从而提高系统的可用性和性能。常见的负载均衡器有Nginx、HAProxy等。2. 使用多个应用服务器:将D
2023-10-09

prometheus高可用部署的方法是什么

Prometheus 是一个开源的监控和告警系统,为了实现高可用性,可以采用以下方法部署 Prometheus:使用多个 Prometheus 实例:部署多个 Prometheus 实例,每个实例负责监控不同的主机或服务。这种方式可以提高系
prometheus高可用部署的方法是什么
2024-03-13

部署到云服务器上是什么意思

部署到云服务器上可以指将服务器的软件、硬件或者应用程序部署到云上,以便用户随时随地访问、使用和管理云服务。具体部署方式可能是直接将应用程序部署到云服务器上,也可能是通过云服务器来托管应用程序。部署到云服务器上可以让应用程序更加安全、高效和可管理。在云服务器的托管环境中,应用程序的数据和服务可能被加密和备份,以确保在发生故障时不会丢失。此外,云服务器还可以提供虚拟化和自动化的功能,以简化部署和管理应用程序...
2023-10-27

项目部署云服务器是什么意思

云服务器的部署通常分为以下几个步骤:选择云服务器提供商:在选择云服务器提供商时,需要考虑到云服务器提供商的技术水平、服务质量、安全性等因素。可以选择一些有一定知名度和口碑的云服务器提供商,比如阿里云、腾讯云、华为云等。配置服务器:根据自己的需求,配置服务器的硬件和软件,比如选择CPU、内存、磁盘等硬件资源,并设置好服务
项目部署云服务器是什么意思
2023-10-28

Nginx负载均衡高可用是什么意思

本篇内容主要讲解“Nginx负载均衡高可用是什么意思”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Nginx负载均衡高可用是什么意思”吧!1.1. 什么是负载均衡高可用nginx作为负载均衡器,
2023-06-05

云服务器部署数据库是什么意思

云服务器部署数据库的意思是指使用云服务器来搭建数据库,以便将数据保存在云服务器的存储区域中。在这种模式下,云服务器是一台虚拟设备,用于存储和访问数据。在实际使用中,可以将云服务器看作是一台虚拟机,而将数据存储在云服务器的存储区域中,这样就可以通过在云服务器上安装必要的软件和存储设备,将数据保存在云服务器上。需要注意的是,云服务器的部署过程可能需要考虑安全性和可靠性等方面的因素,以确保存储在云服务器上的数据安...
2023-10-27

私有云服务器部署流程是什么意思

私有云部署流程可以分为以下几个步骤:选择合适的云服务供应商首先,需要选择一家信誉良好、技术先进、能够提供完整的云计算解决方案的云服务供应商。这可以通过多家比较,以便选择最适合企业需求的云服务供应商。准备云计算环境在选择云服务供应商后,需要将所有硬件和软件设备连接到一个虚拟机上,以便在私有云中运行。这个虚拟机可以是物理机
私有云服务器部署流程是什么意思
2023-10-27

申请云服务器部署流程是什么意思

云服务器部署流程通常包括以下几个步骤:确定云服务器的类型和版本在选择云服务器时,企业需要了解自己需要什么类型的云服务,比如虚拟主机、云存储、CDN、负载均衡等。不同类型的云服务器适用于不同的应用场景,企业可以根据实际需求选择适合自身需求的云服务器。选择云服务器供应商在选择云服务器供应商时,企业需要考虑以下几点:服务能力:企业需要选择有相应服务能力的供应商,如虚拟主机、云存储、
2023-10-26

云服务器部署前端项目是什么意思

云服务器部署前端项目通常是指将网站部署到云服务器上,以便用户能够访问该网站或应用程序。云服务器部署前端项目是指使用云服务器来实现Web应用程序的前端开发,通常包括以下几个步骤:安装云服务器。用户需要选择合适的云服务器品牌和版本,以及云服务器版本和可用性限制。选择所需的软件开发套件。通常需要选择一个云服务器开发套件(例如,Jenkins、VelocityPaaS等)来搭建前端Web应用程序。创建网站或应用程序服务器端组件。用...
2023-10-27

docker部署tomcat应用的步骤是什么

下面是部署Tomcat应用的一般步骤:1. 安装Docker:首先,在服务器上安装Docker。具体安装方法可以参考Docker官方文档。2. 获取Tomcat镜像:可以从Docker Hub上获取Tomcat的镜像。使用以下命令获取最新的
2023-10-20

项目部署在云服务器中的作用是什么意思

通过将应用程序部署到云服务器上,开发人员可以将他们的应用程序推送到全球范围内的用户,并且可以随时随地访问它们。此外,云服务器还提供了高可用性和可靠性,可以保证应用程序在任何时候都能够正常运行。总之,项目部署是将应用程序推送到云服务器上的一种方式,可以提高应用程序的可扩展性、可靠性和高可用性,从而帮助开发人员更快地推出新的应用程序,提高用户的体验。
2023-10-27

申请云服务器部署流程是什么意思呀

云服务器部署流程通常包括以下几个步骤:确定云服务器的需求:首先要明确云服务器的需求,确定需要部署的服务,以及具体的应用场景,例如Web服务器、数据库等。选择云服务器提供商:根据您的需求,选择合适的云服务器提供商,以确保部署流程顺利进行。您可以通过查看对方的官网、服务简介等来了解该公司的服务质量和安全保障。准备服务器环境:根据需求,准备相应的服务器环境,例如服务器硬件设备和操作系统。部署
2023-10-26

腾讯云服务器部署web项目是什么意思

腾讯云服务器部署是指使用云计算技术来搭建和管理服务器,以便将其部署到公共或私有云环境中。这一过程通常涉及使用多台计算节点来实现负载均衡和多地部署,以便在不同区域之间进行数据交换和处理。其中,部署过程通常包括以下步骤:选择云主机:选择一款合适的云主机来存储数据和提供计算资源。配置云主机:使用云主机来搭建和管理云计算环境,包括安装云操作系统、云虚拟机和云管理工具等。准备网络连接:使用云主机
2023-10-26

亚马逊云服务器部署流程是什么意思

1.什么是亚马逊云服务器?亚马逊云服务器(AmazonEC2)是亚马逊公司提供的一种弹性云计算服务,它允许用户在云端轻松部署和管理虚拟服务器。亚马逊云服务器提供了可扩展的计算能力,用户可以根据需要快速创建、启动和停止虚拟服务器实例。2.亚马逊云服务器部署流程步骤一:创建亚马逊云服务器实例在亚马逊云服务器控制台上,选择适合您需求的实例类型、操作系统和其他配置选项。您可以选择不同的实例类型,如通用用途、计算优化...
2023-10-27

亚马逊云服务器部署地址是什么意思

1.亚马逊云服务器部署地址的含义亚马逊云服务器(AmazonEC2)是亚马逊公司提供的一种弹性云计算服务,它允许用户在云端创建和管理虚拟服务器实例。在使用亚马逊云服务器时,用户需要指定一个部署地址,这个地址用于标识用户创建的服务器实例在云端的位置。2.部署地址的作用部署地址在亚马逊云服务器中具有以下作用:唯一标识:每个亚马逊云服务器实例都有一个唯一的部署地址,用于区分不同的服务器实例。网络访问:部署地址可以...
2023-10-27

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录