如何为 Kafka 工具配置 JVM 环境变量
Kafka 是一款开源的分布式消息流处理中间件,其附带的命令行工具在管理、测试和调试过程中扮演着至关重要的角色。由于这些工具本质上是启动 Java 类的 Shell 脚本,因此我们常常需要调整 JVM(Java 虚拟机)的设置,以优化内存管理、提升垃圾回收(GC)性能并确保系统稳定性。 本文将详细介
围绕 kafka 的技术文章与经验分享。
共 20 篇文章Kafka 是一款开源的分布式消息流处理中间件,其附带的命令行工具在管理、测试和调试过程中扮演着至关重要的角色。由于这些工具本质上是启动 Java 类的 Shell 脚本,因此我们常常需要调整 JVM(Java 虚拟机)的设置,以优化内存管理、提升垃圾回收(GC)性能并确保系统稳定性。 本文将详细介
异步通信在现代分布式系统中变得越来越重要,它允许不同组件在无需时间同步的情况下高效交互。这在强调独立性和扩展性的微服务架构中尤为重要。实现异步通信的常用技术和协议包括 Apache Kafka 、 RabbitMQ 和 AMQP协议 。 虽然异步消息系统提升了扩展性和弹性,但也带来了 维护清晰且最新文档 的挑战。正如 REST API…
2011 年初,LinkedIn 开源了 Kafka,这是一个分布式事件流平台。它以作家弗朗茨-卡夫卡(Franz Kafka)的名字命名。顾名思义,Kafka 是为写而优化的。它为处理实时数据馈送提供了一个高吞吐量、低延迟的平台,在互联网公司中得到广泛应用。 Kafka 通过顺序 I/O (Sequential I/O)和零拷贝 (Zero…
前言 在Java开发工程师面试中,特别是涉及到Apache Kafka的部分,面试官可能会从基础知识、架构理解、实际应用、故障排查和性能优化等多个维度来考察您的能力。这篇文章会将一些大概率被问到的面试题目梳理出来,并且告诉应该怎么回答它,不管你求职者在准备面试,还是面试官在准备招聘,这篇文章都非常值得一读,感觉还不错,别忘了收藏起来,以防迷路找不到。…
Apache Flink 是一个流处理框架,用于实时数据处理和流式计算。它可以处理大规模数据流,并提供低延迟和高吞吐量。Flink 支持各种数据源和接口,如 Kafka、HDFS、TCP 流等。它还提供了丰富的数据处理功能,如窗口操作、状态管理、事件时间语义等。Flink…
本文是技术人面试系列Kafka篇,面试中关于Kafka都需要了解哪些基础?一文带你详细了解,欢迎收藏! Why kafka 消息队列的作用: 异步、削峰填谷、解耦 中小型公司 ,技术挑战不是特别高,用 RabbitMQ (开源、社区活跃)是不错的选择;大型公司,基础架构研发实力较强,用 RocketMQ (Java二次开发) 是很好的选择。 如果是…
目前的MQ中间件从存储模型来,分为需要持久化和不需要持久化的两种模型,现在大多数的是支持持久化存储的,比如ActiveMQ、RabbitMQ、Kafka、RocketMQ。ZeroMQ却不需要支持持久化存储而业务系统也大多需要MQ有持久存储的能力,这样可以大大增加系统的高可用性。…
本文介绍spring中使用Kafka的三种方式,其中container方式最灵活,但是开发相对较复杂,stream方式使用最简便,listener方式由于提供的最早,使用的较普遍。 具体的代码参照 示例项目 https://github.com/qihaiyan/springcamp/tree/master/spring-kafka 一、概述…
哈喽大家好,我是咸鱼 今天我们继续来讲一讲 Kafka 当有消息被生产出来的时候,如果没有指定分区或者指定 key ,那么消费会按照【轮询】的方式均匀地分配到所有可用分区中,但不一定按照分区顺序来分配 我们知道,在 Kafka 中消费者可以订阅一个或多个主题,并被分配一个或多个分区…