尊敬的用户,由于账号管理过于分散,我们在阿里云平台的账号暂时停止更新了。如您对我们的内容感兴趣,欢迎关注我们的微信公众号AutoMQ,我们将在那里继续为您提供精彩的内容和最新的资讯。感谢您的理解与支持!
随着大数据技术的飞速发展,Apache Kafka 作为一种高吞吐量、低延迟的分布式消息系统,已经成为企业实时数据处理的核心组件。然而,随着业务的扩展和技术的发展,企业面临着不断增加的存储成本和运维复杂性问题。为了更好地优化系统性能和降低运营成本,企业开始寻找更具优势的消息系统解决方案。其中,AutoMQ [1] 作为一种基于云重新设计的消息系统,凭借其显著的成本优势和弹性能力,成为了企业的理想选择。
在现代企业中,随着数据处理需求的不断增长,AutoMQ [1] 作为一种高效、低成本的流处理系统,逐渐成为企业实时数据处理的关键组件。然而,随着集群规模的扩大和业务复杂性的增加,确保 AutoMQ 集群的稳定性、高可用性和性能优化变得尤为重要。因此,集成一个强大而全面的监控系统对于维护 AutoMQ 集群的健康运行至关重要。夜莺监控系统以其高效的数据采集、灵活的告警管理和丰富的可视化能力,成为企业监控AutoMQ 集群的理想选择。通过使用夜莺监控系统,企业可以实时掌握 AutoMQ 集群的运行状态,及时发现和解决潜在问题,优化系统性能,确保业务的连续性和稳定性。
7 月 13 日,AutoMQ 携手 GreptimeDB“新能源汽车数据基础设施” 主题 meetup 在上海圆满落幕。本次论坛多角度探讨如何通过创新的数据管理和存储架构,提升汽车系统的性能、安全性和可靠性,从而驱动行业的持续发展和创新,涵盖 AutoMQ 多模态共享存储架构、长城汽车多云多活架构的实践与探索、GreptimeDB 边云一体化数据库介绍、小红书深度解读 AutoMQ 云原生及多云容灾架构、车载嵌入式时序数据库的技术挑战和方案等议题。
今天分享的内容是如何通过 Redpanda Console对 AutoMQ 集群状态进行监控,以提高系统的可维护性和稳定性。
AutoMQ 基于 ZGC 进行了一系列调优,以获得更低的延迟。在本文中,我们将详细介绍 ZGC 的工作原理,以及如何通过调整和优化 ZGC 的配置来实现更低的延迟,从而提高 Java 应用程序的性能和响应能力。
AutoMQ 当前已经支持完全构建于像 S3 这样的对象存储之上。你可以参考快速上手 即刻开始体验。AutoMQ 在已有的流存储引擎之上仅仅通过对顶层 WAL 的抽象进行拓展实现少量代码即可做到一些友商引以为傲的的特性,即将流系统完全构建于像 S3 对象存储之上。值得一提的是,我们也已经将这部分源码完全公开,开发者可以利用 S3Stream 流存储引擎轻松在自己的环境中拥有一个完全部署在对象存储之上的 Kafka 服务,具备极低的存储成本和运维复杂度。
当前小红书消息引擎团队与 AutoMQ 团队正在深度合作,共同推动社区建设,探索云原生消息引擎的前沿技术。本文基于 OpenMessaging 框架,对 AutoMQ 进行了全面测评。欢迎大家参与社区并分享测评体验。
AutoMQ 产品动态 | 发布 1.1.0,兼容至 Apache Kafka 3.7,支持 Kaf
基于Netty的自研流系统缓存实现挑战: 内存碎片与OOM困境
AutoMQ vs Kafka: 来自小红书的独立深度评测与对比
本文由北京宝兰德公司解决方案总监徐清康撰写,探讨了Kafka和AutoMQ集群的监控。
立方体文件系统(CubeFS)是一个云原生存储解决方案,现为CNCF孵化项目,支持S3、POSIX、HDFS等协议,提供多租户、多AZ部署和跨区域复制等功能,适用于大数据、AI、容器平台等场景。要部署AutoMQ集群,需先准备CubeFS集群,启用对象网关,创建用户并配置S3接口,然后创建Bucket。接着,下载AutoMQ二进制包,使用S3 URL生成器配置并启动集群,确保所有主机在同一网络并配置正确端口。启动时,先启动控制器,再启动Broker节点。注意,部署在私有数据中心时,需考虑SSD的可靠性,可能需要RAID配置。
Kafka 3.3.1 引入了 KRaft 元数据管理组件,替代 Zookeeper,以简化集群一致性维护,支持更大规模集群并减轻运维复杂性。在 Zookeeper 模式下,需同时运维 ZK 和 Broker,而 KRaft 模式仅需 3 个节点即可构成最小生产集群,且通信协调基于 Raft 协议,增强了一致性。KRaft 模式中,Controller 使用单线程处理请求,通过 KRaft 保持内存状态与多节点一致性。此外,Broker 根据 KRaft 记录更新元数据,实现声明式管理,提高集群协调效率。KRaft 的引入是集群协调机制的演进,采用事件驱动模型实现元数据的一致性。
Marathon 是一个针对流系统 AutoMQ 的自动化持续测试平台,旨在在模拟生产环境和各种故障场景中验证 SLA 的可靠性。设计原则包括易拓展、可观测和低成本。平台采用分布式架构,Controller 负责资源管理和任务编排,动态调整 Worker 数量和配置,而 Worker 是无状态的,用于生成负载和上报数据。系统基于 K8S,利用服务发现、事件总线和 Spot 实例降低成本并提高弹性。测试场景以代码形式描述,支持不同流量模型和断言,提供丰富的可观测性和告警功能。未来,Marathon 有望泛化为适用于各种分布式系统的测试平台。
AutoMQ Kafka 优化设计,充分利用云基础设施,尤其是成本低廉的Spot实例,实现公有云成本节约。尽管Spot实例的不确定性可能导致服务中断,AutoMQ通过Broker无状态化、快速弹性扩展和Serverless支持,以及应对Spot实例回收的优雅停机和容灾机制,确保了可靠的Kafka服务。混合使用按需实例以保证关键服务稳定,同时在面临Spot实例库存不足时,具备回退到按需实例的能力。AutoMQ Kafka通过创新技术在稳定性与成本之间找到了平衡,为用户提供灵活且经济高效的解决方案。
在12月16日的“AutoMQ云原生创新论坛”上,AutoMQ联合创始人CTO周新宇介绍了AutoMQ的新特性,强调云原生架构和未来规划。阿里云和亚马逊云的技术专家分享了OSS成本优化与EC2的Nitro系统。圆桌对话中,嘉宾讨论了上云与下云的挑战,聚焦成本、故障处理和弹性。论坛还发布了AutoMQ的新版产品特性,包括多云兼容、性能提升和RocketMQ的创新解决方案。活动提供了丰富的资源分享,并激发了现场热烈的技术交流。
AutoMQ,新一代云原生 Kafka,解决原 Kafka 的迁移复制低效、弹性不足和高成本问题。本文探讨 Kafka 的冷读(追赶读)副作用,如硬盘 I/O 争抢、Page Cache 污染和 Zero Copy 阻塞。Kafka 的冷读依赖本地存储,导致性能瓶颈。AutoMQ 通过对象存储实现冷热隔离,避免 I/O 争抢;自主管理内存,减少 Page Cache 污染;异步 I/O 响应网络层,提高效率。此外,AutoMQ 优化冷读性能,确保批处理和故障恢复时的高效运行。
AutoMQ是一款使用对象存储的消息系统,通过内存攒批和EBS持久化降低API调用成本。它有两种对象类型:Stream Set Object和Stream Object。Compaction过程用于数据清理、减少元数据和提升读取性能。Compaction包括SSO和SO两阶段,本文聚焦于SSO Compaction,涉及索引解析、排序、数据段分裂和迭代计划。每个迭代按内存限制划分任务,读取数据段并上传新对象,最后提交元数据更新。AutoMQ还有其他特性如Force Split和分级限流。团队由Apache RocketMQ和Linux LVS背景成员组成,致力于提供低成本、高弹性的消息服务。
AutoMQ在2024年3-4月推出企业版服务,现已上线阿里云和AWS中国区云市场,用户可自助开通。支持按小时和包年包月付费,以及订阅许可证模式,实现跨IDC环境交付。企业版提供同城3AZ容灾集群,确保服务高可用。此外,还推出了Kafka全托管迁移工具和集群自助版本升级功能,保障平滑迁移和无缝升级。详情见参考资料。AutoMQ团队由Apache RocketMQ和Linux LVS核心成员组成,致力于提供成本优化和高效弹性的消息队列服务。
本文介绍了Apache Kafka 3.7的Producer使用及原理,讲解了如何创建和使用Producer,展示了一个发送消息的示例代码,并介绍了ProducerRecord和Callback接口。ProducerRecord包含topic、partition等属性,Callback用于发送消息后的回调处理。接着阐述了send、flush和close方法的功能。文章还探讨了核心组件,包括ProducerMetadata、RecordAccumulator、Sender和TransactionManager,以及消息发送流程。最后,讨论了元数据刷新、分区选择、消息攒批和超时处理等实现细节。
AutoMQ是云原生Kafka实现,采用共享存储架构,与阿里云合作利用OSS、ESSD、ESS和抢占式实例降低成本,实现10倍于Apache Kafka的性价比,并提供自动弹性。它使用对象存储OSS实现流式数据高效读取,通过ESSD作为WAL保证性能,弹性伸缩服务ESS简化交付,抢占式实例降低成本。此外,AutoMQ利用ECS的高可用性和ESSD的高性能存储,结合NVMe协议和多重挂载技术,实现快速故障恢复和低成本运维。该系统旨在充分利用云原生能力,推动消息和流存储服务进步。
Apache Doris 是一个高性能的分析型数据库,以其亚秒级查询响应和对复杂分析的支持而知名。它适合报表分析、即席查询等场景,能从 AutoMQ 通过 Routine Load 导入 Kafka 主题数据。本文详述了如何配置 Doris 环境,创建测试数据,以及设置 Routine Load 作业从 AutoMQ 导入 JSON 数据到 Doris 表的过程。最后,文中展示了验证数据成功导入的方法。Apache Doris 提供了低成本、高弹性的数据处理解决方案,其团队由 Apache RocketMQ 和 Linux LVS 的核心成员组成。
Apache Kafka,作为流处理领域的标杆,面临云环境下的挑战,如高存储成本、运维复杂性和性能瓶颈。传统的本地磁盘Shared Nothing架构导致这些问题,而分层存储仅部分缓解,未根本解决问题。直接写入S3虽降低成本,但牺牲了延迟。为解决这些痛点,提出了创新的共享存储架构,通过EBS+S3实现存算分离,保持低延迟并提高弹性,同时降低成本和运维复杂性。该架构将EBS视为共享存储,实现Broker与存储的解耦,确保在云时代引领流处理系统的发展。
Apache Kafka的Exactly-Once语义确保了消息处理的准确性和一致性。通过幂等性和事务消息,Kafka实现了要么全处理要么全不处理的原子性。文章详细解析了Kafka事务的工作流程,包括生产者的幂等性(通过序列号保证),以及事务消息的提交和回滚过程。Kafka事务提供了ACID保证,但存在性能限制,如额外的RPC请求和单生产者只能执行一个事务。此外,事务适用于同集群内的操作,跨集群时原子性无法保证。了解这些原理有助于开发者更好地利用Kafka事务构建可靠的数据处理系统。
MirrorMaker2 (MM2) 是 Kafka 从 2.4.0 开始提供的数据复制工具,用于集群间的数据同步和备份。MM2 有三种部署模式:dedicated mode、standalone mode 和 Kafka Connect mode。AutoMQ即将推出基于MM2的迁移产品,助力用户平滑迁移到AutoMQ平台。
AutoMQ是基于S3 Stream的Apache Kafka云原生解决方案,利用云盘和对象存储实现低延迟、高吞吐、低成本流式存储。Delta WAL是其核心组件,作为持久化写入缓冲区,先在云盘上做高效持久化,再上传至对象存储。Delta WAL采用Direct IO在裸设备上读写,避免Page Cache污染,提高写入性能,加快宕机恢复速度。设计目标包括轮转写入、充分利用云盘性能和快速恢复。其写入和恢复流程涉及WALHeader、RecordHeader和SlidingWindow数据结构。基准测试显示,Delta WAL能充分利用云盘资源,实现高吞吐和低延迟。
Apache Kafka的单分区写入性能在某些严格保序场景中至关重要,但其现有线程模型限制了性能发挥。本文分析了Kafka的串行处理模型,包括SocketServer、KafkaChannel、RequestChannel等组件,指出其通过KafkaChannel状态机确保请求顺序处理,导致处理效率低下。AutoMQ提出流水线处理模型,简化KafkaChannel状态机,实现网络解析、校验定序和持久化的阶段间并行化,提高处理效率。测试结果显示,AutoMQ的极限吞吐是Kafka的2倍,P99延迟降低至11ms。
AutoMQ致力于打造下一代云原生Kafka系统,解决Kafka痛点。本文深入解析Kafka Consumer与Broker的交互机制,涉及消费者角色、核心组件及常用接口。消费者以group形式工作,包括leader和follower。交互流程涵盖FindCoordinator、JoinGroup、SyncGroup、拉取消息和退出过程。文章还探讨了broker的consumer group状态管理和rebalance原理。AutoMQ团队分享Kafka技术,感兴趣的话可以关注他们。
文章介绍了 AutoMQ 的 Autoscaling 架构,包括利用云服务如 AWS 的 Auto Scaling Group 和 Cloud Watch,以及弹性策略的选取和优化。面临的挑战包括理解云服务的弹性策略、找到触发弹性的理想指标,以及应对不同场景的弹性需求。AutoMQ 最终采用定时和自定义目标跟踪策略来实现弹性,并展示了其在流量变化下的弹性效果。未来,AutoMQ 计划优化弹性策略、支持多云、自定义监控和 Kubernetes 集成。
Apache Kafka的分区迁移通常需要大量数据同步,耗时较长,但在AutoMQ中,由于存算分离架构,迁移时间缩短至秒级。本文深入解析了AutoMQ秒级迁移的原理和源码,包括构建迁移命令、Broker同步变更、元数据持久化、数据上传、选主以及数据恢复等六个步骤。这种高效迁移能力适用于高峰期快速扩容和Serverless按需扩容场景,提升了系统的弹性和运维效率。AutoMQ由Apache RocketMQ和Linux LVS团队创建,旨在提供成本优化和高弹性消息队列服务。
Redis将从BSD许可证转向RSALv2和SSPLv1的双重许可,以应对云时代挑战,保护开源精神,防止云厂商垄断。这一变化旨在确保开源软件的公平竞争,类似过去IE浏览器与操作系统绑定的情况。Redis的CEO指出,旧开源概念已不合时宜,云厂商应为使用开源项目做出贡献。AutoMQ作为云原生Kafka,采用BSL协议,旨在平衡开源与商业竞争,坚持可持续发展和开源初心。
新一年, AutoMQ 首场线下活动重磅来袭!2024年3月9日,由 AutoMQ 与阿里云联合举办的云原生创新论坛将于杭州与大家见面,双方联合重磅发布新一代云原生 Kafka ——AutoMQ On-Prem 版本 !现场将会分享如何通过云原生和存算分离架构实现 Kafka 产品的10倍成本优化,并保持秒级分区无损迁移。另外,活动现场还有来自得物的技术专家分享 AutoMQ 在生产场景中的应用实践,以及阿里云的资深专家为大家剖析多 AZ 块存储的原理。
Apache Kafka 的系统测试框架包括1000+的集成和性能测试,使用ducktape框架,支持Docker、虚拟机和AWS EC2环境。AutoMQ基于此框架确保代码健壮性和与Kafka的兼容性。测试通过Docker环境运行,目录结构包含Docker、kafkatest等子目录,测试case位于kafkatest/tests中。运行测试使用`run_tests.sh`脚本,测试结果和日志会被保存。AutoMQ目前有543个系统测试案例,每日通过GitHub Action自动运行,保证与Kafka的兼容性和服务健壮性。
本文探讨了云计算的弹性能力与实际应用的差距,指出云厂商的包年包月策略与弹性需求相冲突。作者建议改进Spot实例回收机制和资源创建API的SLA,以促进更广泛的弹性使用。同时,文章强调程序员在资源回收上的挑战,类比于编程语言中内存管理的问题,提出需要更好的资源回收解决方案。此外,基础软件和应用层尚未充分准备好支持弹性,尤其是有状态应用。企业应利用Cloud Run等托管服务实现计算资源弹性,并选择支持弹性的基础软件。文章还介绍了AutoMQ如何利用弹性能力降低成本,并预告了一场相关 Meetup 活动。
InfoQ 特别策划了此次访谈,与AutoMQ共同探讨在 Apache Kafka 和 Apache RocketMQ 领域的最新见解以及最前沿的架构设计理念,以下为专访原文。