Kafka
文章平均质量分 88
微毂
这个作者很懒,什么都没留下…
展开
-
10 Kafka集群与运维
Kafka集群与运维10.1 集群应用场景10.1.1 消息传递Kafka可以很好地替代传统邮件代理。消息代理的使用有多种原因(将处理与数据生产者分离,缓冲未处理的消息等)。与大多数邮件系统相比,Kafka具有更好的吞吐量,内置的分区,复制和容错功能,这使其成为大规模邮件处理应用程序的理想解决方案。根据我们的经验,消息传递的使用通常吞吐量较低,但是可能需要较低的端到端延迟,并且通常取决于Kafka提供的强大的持久性保证。在这个领域,Kafka与ActiveMQ或 RabbitMQ等传统消息传原创 2021-03-07 23:54:53 · 359 阅读 · 1 评论 -
9 Kafka高级特性解析-延时队列和重试队列
9 Kafka高级特性解析-延时队列和重试队列9.1 延时队列两个follower副本都已经拉取到了leader副本的最新位置,此时又向leader副本发送拉取请求,而 leader副本并没有新的消息写入,那么此时leader副本该如何处理呢?可以直接返回空的拉取结果给 follower副本,不过在leader副本一直没有新消息写入的情况下,follower副本会一直发送拉取请求, 并且总收到空的拉取结果,消耗资源。Kafka在处理拉取请求时,会先读取一次日志文件,如果收集不到足够多(fet原创 2021-03-07 23:46:27 · 777 阅读 · 1 评论 -
8 Kafka高级特性-稳定性
8 稳定性8.1 事务一、事务场景1. 如producer发的多条消息组成一个事务这些消息需要对consumer同时可见或者同时不可见 。2. producer可能会给多个topic,多个partition发消息,这些消息也需要能放在一个事务里面, 这就形成了一个典型的分布式事务。3. kafka的应用场景经常是应用先消费一个topic,然后做处理再发到另一个topic,这个 consume-transform-produce过程需要放到一个事务里面,比如在消息处理或者发送的过程中...原创 2021-03-07 23:41:09 · 493 阅读 · 0 评论 -
7 Kafka高级特性-物理存储
物理存储7.1 日志存储概述Kafka 消息是以主题为单位进行归类,各个主题之间是彼此独立的,互不影响。每个主题又可以分为一个或多个分区。每个分区各自存在一个记录消息数据的日志文件。图中,创建了一个tp_demo_01主题,其存在6个Parition,对应的每个Parition下存在一个[Topic-Parition]命名的消息日志文件。在理想情况下,数据流量分摊到各个Parition中,实现了负载均衡的效果。在分区日志文件中,你会发现很多类型的文件,如:.index、.timest原创 2021-03-07 23:32:45 · 359 阅读 · 0 评论 -
6 Kafka高级特性解析-主题与分区
Kafka高级特性解析-主题与分区6.1 主题6.1.1 管理使用kafka-topics.sh脚本:主题中可以使用的参数定义:6.1.1.1 创建主题原创 2021-03-07 22:59:44 · 1045 阅读 · 1 评论 -
5 Kafka高级特性解析-生产者与消费者
Kafka高级特性解析-生产者与消费者5.1 生产者5.1.1 消息发送5.1.1.1 数据生产流程解析1. Producer创建时,会创建一个Sender线程并设置为守护线程。2. 生产消息时,内部其实是异步流程;生产的消息先经过拦截器->序列化器->分区器,然后将消息缓存在缓冲区(该缓冲区也是在Producer创建时创建)。3. 批次发送的条件为:缓冲区数据大小达到batch.size或者linger.ms达到上限,哪个先达到就算哪个。4. 批次发送后,发往指原创 2021-03-02 10:14:04 · 479 阅读 · 0 评论 -
4 Kafka服务端参数配置
1.4 服务端参数配置$KAFKA_HOME/config/server.properties文件中的配置。1.4.1 zookeeper.connect该参数用于配置Kafka要连接的Zookeeper集群的地址。它的值是一个字符串,使用逗号分隔Zookeeper的多个地址。Zookeeper的单个地址是host:port形式的,可以在最后添加Kafka在Zookeeper中的根节点路径。如:zookeeper.connect=node2:2181,node3:2181,node4:原创 2021-02-21 21:25:08 · 290 阅读 · 0 评论 -
3 Kafka开发实战
3 Kafka开发实战3.1 消息的发送与接收生产者主要的对象有: KafkaProducer ,ProducerRecord。其中 KafkaProducer 是用于发送消息的类, ProducerRecord 类用于封装Kafka的消息。KafkaProducer 的创建需要指定的参数和含义:其他参数可以从 org.apache.kafka.clients.producer.ProducerConfig 中找到。我们后面的内容会介绍到。消费者生产消息后,需要broker端原创 2021-02-21 21:24:40 · 516 阅读 · 0 评论 -
2 Kafka安装与配置
2 Kafka安装与配置2.1 Java环境为前提1、上传jdk-8u261-linux-x64.rpm到服务器并安装:rpm -ivh jdk-8u261-linux-x64.rpm2、配置环境变量vim /etc/profile# 生效source /etc/profile# 验证java -version2.2 Zookeeper的安装配置1、上传zookeeper-3.4.14.tar.gz到服务器2、解压到/opttar -zxf zooke原创 2021-02-21 21:23:53 · 426 阅读 · 0 评论 -
1 Kafka架构和基本概念
1.1 架构和基本概念1.1.1 kafka介绍Kafka是最初由Linkedin公司开发,是一个分布式、分区的、多副本的、多生产者、多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),常见可以用于web/nginx日志、访问日志,消息服务等等,Linkedin于2010年贡献给了Apache基金会并成为顶级开源项目。主要应用场景是:日志收集系统和消息系统。Kafka主要设计目标如下:以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数转载 2021-02-20 17:03:53 · 240 阅读 · 1 评论
分享