云消息队列备份 | CKafka、TDMQ 消息队列数据备份到 COS

2024-03-23 19:18

本文主要是介绍云消息队列备份 | CKafka、TDMQ 消息队列数据备份到 COS,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

随着业务规模的不断扩大,企业越来越重视构建高性能、高可用的大型分布式系统。为了解决应用耦合,合理进行流量削锋,腾讯云提供了包括 CKafka 和 TDMQ 在内的一系列消息队列中间件。为了更方便地对消息队列中的数据进行转存和持久化,腾讯云对象存储 COS 为用户提供了云消息队列备份的能力。

一、云消息队列备份方案-使用 COS 应用集成备份

COS 应用集成 是腾讯云对象存储 COS 基于 Serverless 云函数,为开发者提供的存储数据应用解决方案。开发者只需要在 COS 控制台一键配置,即可使用丰富的功能。

COS 应用集成提供了云消息队列备份的能力,开发者可以轻松配置定时备份任务,将云消息队列中的消息记录以文件的形式转至对象存储,以便进行持久化保存。开发者可以通过备份文件提取消息记录,对消息进行入库、统计分析等操作。

 

二、方案优势

  • 存储成本低:对象存储支持数据归档和降冷,长期存储成本低;

  • 可视化操作:一键配置,简化开发流程,无需编码工作;

  • 指定范围:可指定消费的起始位置,排除不需要的记录;

  • 消息聚合:可按分钟维度聚合消息记录,并支持修改时间粒度;

  • 自动化执行:云函数自动完成云消息队列CKafka / TDMQ 的数据备份,中间过程无需任何人工操作;

三、云消息队列介绍

消息队列 CKafka(Cloud Kafka)是一个分布式、高吞吐量、高可扩展性的消息系统,100%兼容开源 Kafka API 0.9.0 至 2.8.0版本。CKafka 基于发布订阅模式,通过消息解耦,使生产者和消费者异步交互,无需彼此等待。CKafka 具有数据压缩、支持离线和实时数据处理等优点,适用于日志压缩收集、监控数据聚合等场景

消息队列 TDMQ (Tencent Distributed Message Queue)是腾讯基于 Apache Pulsar 自研的一个云原生消息中间件系列,其中包含兼容 Pulsar、RabbitMQ、RocketMQ 等协议的消息队列子产品,得益于其底层计算与存储分离的架构,TDMQ 具备良好的弹性伸缩以及故障恢复能力

四、备份任务设置步骤

这里以设置 CKafka 消息备份任务为例,TDMQ 设置与之相似:

  1. 登录腾讯云 对象存储 COS 控制台。

  2. 在左侧导航中,单击【应用集成】,找到【CKafka消息备份】。

  3. 单击【配置备份规则】,进入规则配置页面。

  4. 单击【添加函数】。注意:如果您尚未开通云函数服务,请前往 云函数控制台 开通云函数服务,按照提示完成服务授权即可。

  5. 在弹出的窗口中,配置如下信息:

 

a.函数名称:作为函数的唯一标识名称,创建后不可修改(您可以在云函数控制台上查看该函数)。

b.关联存储桶:存放 CKafka 消息的 COS 存储桶。

c.时间粒度:根据消息量的大小,选取汇聚消息的时间间隔,时间间隔为5 - 15分钟不等。为保证转存性能,聚合文件数量与 Partition 数量、partition_max 设置数值有关。有关 Partition 的说明,请参见分区。

d.SCF 授权:CKafka 消息备份需要授权云函数从您的 CKafka 服务中读取相关实例消息,并将消息转存至您指定的存储桶中。因此需要添加此授权。

6.单击【下一步】,进行 CKafka 配置,配置项说明如下:

 

a.实例选择:选择消息来源的 CKafka 实例,仅支持同地域的 CKafka 实例。

b.主题选择:选择消息来源的主题。

c.起始位置:消息转储备份时历史消息的处理方式,topic offset 设置。

d.访问地址:必须为 VPC 内网访问地址,基础网络的 CKafka 实例请添加路由策略,具体请参考 添加路由策略。注意:对应的 VPC 子网中必须有可用的 IP,且必须支持 DHCP。

7.单击【下一步】,进行投递配置,配置项说明如下:

 

a.投递的路径:备份文件的投递路径前缀,不填写则默认保存在存储桶根路径,指定前缀必须以斜杠 “ / ” 为结尾。

8.添加配置后,单击【确认】,即可看到函数已添加完成。

 

五、查看备份文件

等待一段时间后,可以看到存储桶下投递了备份文件,其内容的每行代表一条消息记录。

 

 

好了,本期关于云备份方案将分享到这里,欢迎点击“链接”,查看更多云消息队列备份攻略。

这篇关于云消息队列备份 | CKafka、TDMQ 消息队列数据备份到 COS的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/839272

相关文章

java向微信服务号发送消息的完整步骤实例

《java向微信服务号发送消息的完整步骤实例》:本文主要介绍java向微信服务号发送消息的相关资料,包括申请测试号获取appID/appsecret、关注公众号获取openID、配置消息模板及代码... 目录步骤1. 申请测试系统2. 公众号账号信息3. 关注测试号二维码4. 消息模板接口5. Java测试

k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)

《k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)》本文记录在K8s上运行的MySQL/MariaDB备份方案,通过工具容器执行mysqldump,结合定时任务实... 目录前言一、获取需要备份的数据库的信息二、备份步骤1.准备工作(X86)1.准备工作(arm)2.手

一文详解MySQL如何设置自动备份任务

《一文详解MySQL如何设置自动备份任务》设置自动备份任务可以确保你的数据库定期备份,防止数据丢失,下面我们就来详细介绍一下如何使用Bash脚本和Cron任务在Linux系统上设置MySQL数据库的自... 目录1. 编写备份脚本1.1 创建并编辑备份脚本1.2 给予脚本执行权限2. 设置 Cron 任务2

Java中常见队列举例详解(非线程安全)

《Java中常见队列举例详解(非线程安全)》队列用于模拟队列这种数据结构,队列通常是指先进先出的容器,:本文主要介绍Java中常见队列(非线程安全)的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录一.队列定义 二.常见接口 三.常见实现类3.1 ArrayDeque3.1.1 实现原理3.1.2

C++ RabbitMq消息队列组件详解

《C++RabbitMq消息队列组件详解》:本文主要介绍C++RabbitMq消息队列组件的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. RabbitMq介绍2. 安装RabbitMQ3. 安装 RabbitMQ 的 C++客户端库4. A

Mac备忘录怎么导出/备份和云同步? Mac备忘录使用技巧

《Mac备忘录怎么导出/备份和云同步?Mac备忘录使用技巧》备忘录作为iOS里简单而又不可或缺的一个系统应用,上手容易,可以满足我们日常生活中各种记录的需求,今天我们就来看看Mac备忘录的导出、... 「备忘录」是 MAC 上的一款常用应用,它可以帮助我们捕捉灵感、记录待办事项或保存重要信息。为了便于在不同

Python+PyQt5实现MySQL数据库备份神器

《Python+PyQt5实现MySQL数据库备份神器》在数据库管理工作中,定期备份是确保数据安全的重要措施,本文将介绍如何使用Python+PyQt5开发一个高颜值,多功能的MySQL数据库备份工具... 目录概述功能特性核心功能矩阵特色功能界面展示主界面设计动态效果演示使用教程环境准备操作流程代码深度解

golang实现延迟队列(delay queue)的两种实现

《golang实现延迟队列(delayqueue)的两种实现》本文主要介绍了golang实现延迟队列(delayqueue)的两种实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的... 目录1 延迟队列:邮件提醒、订单自动取消2 实现2.1 simplChina编程e简单版:go自带的time

SpringCloud整合MQ实现消息总线服务方式

《SpringCloud整合MQ实现消息总线服务方式》:本文主要介绍SpringCloud整合MQ实现消息总线服务方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、背景介绍二、方案实践三、升级版总结一、背景介绍每当修改配置文件内容,如果需要客户端也同步更新,

一文带你搞懂Redis Stream的6种消息处理模式

《一文带你搞懂RedisStream的6种消息处理模式》Redis5.0版本引入的Stream数据类型,为Redis生态带来了强大而灵活的消息队列功能,本文将为大家详细介绍RedisStream的6... 目录1. 简单消费模式(Simple Consumption)基本概念核心命令实现示例使用场景优缺点2