
kafka篇
流一恩典
这个作者很懒,什么都没留下…
展开
-
深入浅出系列之 -- MySQL的数据增量同步到kafka
一、架构介绍生产中由于历史原因web后端,mysql集群,kafka集群(或者其它消息队列)会存在以下三种结构。1 .数据先入mysql集群,再入kafka数据入的MySQL集群是不可更改的,如何再高效的将数据写入kafka呢?A),在表中存在自增ID的字段,然后根据ID,定期扫描表,然后将数据入kafka。B),有时间字段的,可以按照时间字段定期扫描入ka...原创 2019-08-13 15:06:55 · 2341 阅读 · 0 评论 -
深入浅出系列之 -- Kafka 权限管理实战
一、概述1、Kafka的权限分类1)、身份认证(Authentication):对client 与服务器的连接进行身份认证,brokers和zookeeper之间的连接进行Authentication(producer 和 consumer)、其他 brokers、tools与 brokers 之间连接的认证。2)、权限控制(Authorization):实现对于消息级别的权限...转载 2019-08-21 14:29:46 · 2976 阅读 · 1 评论 -
深入浅出系列之 -- 如何为kafka集群选择合适的Topics/Partitions数
这是许多kafka使用者经常会问到的一个问题。本文的目的是介绍与本问题相关的一些重要决策因素,并提供一些简单的计算公式。越多的分区可以提供更高的吞吐量 首先我们需要明白以下事实:在kafka中,单个patition是kafka并行操作的最小单元。1)在producer和broker端,向每一个分区写入数据是可以完全并行化的,此时,可以通过加大硬件资源的利用率来...原创 2019-08-13 09:27:34 · 267 阅读 · 0 评论 -
深入浅出系列之 -- acks参数对消息持久化的影响
写在前面 :面试大厂时,一旦简历上写了Kafka,几乎必然会被问到一个问题:说说acks参数对消息持久化的影响?这个acks参数在kafka的使用中,是非常核心以及关键的一个参数,决定了很多东西。所以无论是为了面试还是实际项目使用,大家都值得看一下这篇文章对Kafka的acks参数的分析,以及背后的原理。如何保证宕机的时候数据不丢失?如果要想理解这个acks参数的含义,首先就...原创 2019-08-09 20:45:28 · 308 阅读 · 0 评论 -
深入浅出系列之 -- kafka高可用机制|存储机制
对于一个复杂的分布式系统,如果没有丰富的经验和牛逼的架构能力,很难把系统做得简单易维护,我们都知道,一个软件的生命周期中,后期维护占了70%,所以系统的可维护性是极其重要的, kafka 能成为大数据领域的事实标准,很大原因是因为运维起来很方便简单,今天我们来看下 kafka 是怎么来简化运维操作的。kafka 使用多副本来保证消息不丢失,多副本就涉及到kafka的复制机制,在一个超大...原创 2019-08-10 06:50:17 · 223 阅读 · 0 评论 -
深入浅出系列之 -- kafka调优
背景引入:很多同学看不懂kafka参数 今天给大家聊一个很有意思的话题,大家知道很多公司都会基于Kafka作为MQ来开发一些复杂的大型系统。而在使用Kafka的客户端编写代码与服务器交互的时候,是需要对客户端设置很多的参数的。所以我就见过很多同学,可能刚刚加入团队,对Kafka这个技术其实并不是很了解。此时就会导致他们看团队里的一些资深同事写的一些代码,会看不懂是怎么回事,不了解背后的...原创 2019-08-07 15:20:07 · 340 阅读 · 0 评论 -
深入浅出系列之 -- Kafka最佳部署实践
这是一篇关于 Kafka 实践的文章,内容来自 DataWorks Summit/Hadoop Summit(Hadoop Summit)上的一篇分享,里面讲述了很多关于 Kafka 配置、监控、优化的内容,绝对是在实践中总结出的精华,有很大的借鉴参考意义,本文主要是根据 PPT 的内容进行翻译及适当补充。Kafka 的架构这里就不多做介绍了,直接步入正题。Kafka 基本配...原创 2019-08-21 10:35:19 · 487 阅读 · 0 评论 -
深入浅出系列之 -- kafka分区分配策略
生产者的分区分配对于用户而言,当调用send方法发送消息之后,消息就自然而然的发送到了broker中。其实在这一过程中,有可能还要经过拦截器、序列化器和分区器(Partitioner)的一系列作用之后才能被真正地发往broker。producer.send(record);消息在发往broker之前是需要确定它所发往的分区的,如果消息ProducerRecord中指定了part...原创 2019-08-09 17:26:21 · 1269 阅读 · 0 评论 -
深入浅出系列之 -- kafka介绍
前言:官网解释: Kafka是最初由Linkedin公司开发,是一个分布式、支持分区的(partition)、多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大的特性就是可以实时的处理大量数据以满足各种需求场景:比如基于hadoop的批处理系统、低延迟的实时系统、storm/Spark流式处理引擎,web/nginx日志、访问日志,消息服务等等,...原创 2019-08-07 14:09:58 · 878 阅读 · 1 评论 -
深入浅出系列之 -- kafka消费者的三种语义模型
本文主要详解kafka client的使用,包括kafka消费者的三种消费语义at-most-once,at-least-once,和exact-once message,生产者的使用等。创建主题bin/kafka-topics.sh --zookeeper localhost:2181 --create --topic normal --partitions 2 --re...原创 2019-08-08 20:44:28 · 1593 阅读 · 0 评论 -
深入浅出系列之 -- Kafka核心设计与实践原理
一、基础概念体系结构 Producer:生产者 Consumber:消费者 Broker:服务代理节点(kafka实例) 消息存储 主题(Topic):kafka消息以topic为单位进行归类,逻辑概念 分区(Partition): Topic-Partition为一对多 分区在存储层面可看做是一个可追加的日志文...原创 2019-08-16 15:42:05 · 294 阅读 · 0 评论