最近做的一个项目需要跟Kafka打交道,学习了很多相关知识,就到这里来汇总一下。kafka是一个传递消息的系统,原本是用来快速记录海量log的,现在也经常用作消息队列。它主要由三个部分组成,producer,broker以及consumer。producer发布消息,broker存储消息,consu...
分类:
其他好文 时间:
2015-03-14 06:05:48
阅读次数:
147
背景介绍
Kafka简介
Kafka是一种分布式的,基于发布/订阅的消息系统。主要设计目标如下:
以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间的访问性能高吞吐率。即使在非常廉价的商用机器上也能做到单机支持每秒100K条消息的传输支持Kafka Server间的消息分区,及分布式消费,同时保证每个partition内的消息顺序传输同时支持离线数据...
分类:
其他好文 时间:
2015-03-10 17:19:03
阅读次数:
197
SOA:(Service-Oriented Architecture,面向服务的体系结构),所以很自然它是体系结构,模型,架构模式,如下图3:
Web Service和CORBA(Common
Object Request Broker Architecture,通用对象请求代理体系结构)是SOA的两种不同实现方式。
WSDL(Web Services Descript...
分类:
其他好文 时间:
2015-03-06 12:46:35
阅读次数:
110
broker.id 默认值:无每一个broker都有一个唯一的id,这是一个非负整数,这个id就是broker的"名字",这样就允许broker迁移到别的机器而不会影响消费者。你可以选择任意一个数字,只要它是唯一的。log.dirs 默认值:/tmp/kafka-logs一个用逗号分隔的目录列表,可...
分类:
其他好文 时间:
2015-02-25 12:57:28
阅读次数:
174
国内顶尖的sql dba 团队招人。4年DBA 经验我们希望你掌握1、熟练关系型数据库原理、精通一门脚本语言(Python、powershell )2、对自动化、数据化感兴趣。3、能通过脚本搭建 sqlserver cluster、services broker、Replication 。4、熟悉m...
分类:
数据库 时间:
2015-02-16 19:30:50
阅读次数:
248
1、在使用Java API访问之前先在安装有kafka的各个节点启动服务
bin/kafka-server-start.sh config/server.properties &
2、报如下错误
props.put("metadata.broker.list", "storm1:9092,storm2:9092,storm3:9092");
props.put("serializer.cl...
分类:
其他好文 时间:
2015-02-07 18:56:33
阅读次数:
174
kafka是用scala编写,用zookeeper做协调。scala的代码没学习过,这边主要看别人写的文档和自己的工作实践来的。笔记可能会写多篇,因为这东西要经常看啊,不看过了多久就忘了。
东西看完了就要问问自己3W1H
What:kafka是一个分布式(多broker,zookeeper)的,分区的(partition),消息复制的(replicate)的消息中间件(log service)...
分类:
其他好文 时间:
2015-02-05 18:32:14
阅读次数:
211
一. 协议 AMQP协议是分层的,类似于OSI或TCP/IP协议分层。从图中可以看出分三层: 1. Model Layer:规范服务器端Broker的行为。 2. Session Layer:定义客户端 与服务器端Broker的Context。 3. Transport Layer:...
分类:
其他好文 时间:
2015-02-04 22:00:27
阅读次数:
369
Kafka Producer相关代码分析
标签(空格分隔): kafka
Kafka Producer将用户的消息发送到Kafka集群(准确讲是发送到Broker)。本文将分析Producer相关的代码实现。
类kafka.producer.Producer
如果你自己实现Kafka客户端来发送消息的话,你就是用到这个类提供的接口来发送消息。(如果你对如何利用Producer AP...
分类:
其他好文 时间:
2015-01-17 20:53:34
阅读次数:
233
Kafka的通讯协议
标签:kafka
Kafka的Producer、Broker和Consumer之间采用的是一套自行设计的基于TCP层的协议。Kafka的这套协议完全是为了Kafka自身的业务需求而定制的,而非要实现一套类似于Protocol Buffer的通用协议。本文将介绍这套协议的相关内容。
基本数据类型
定长数据类型:int8,int16,int32和int64,对...
分类:
其他好文 时间:
2015-01-15 20:23:45
阅读次数:
260