-
Notifications
You must be signed in to change notification settings - Fork 323
configuration.zh_CN
Ady Liu edited this page May 15, 2020
·
7 revisions
#配置指南
文档>>配置指南
Jafka 配置参数格式类似于 java.util.Properties,因此这些参数可以通过 properties 文件存放,或者在进程中通过构造 Properties 对象进行配置和传递。
##1. 名词解释
- 服务端/broker
- 消息存储、中转的地方;生产者将消息发送给服务端,消费者则从服务端接收/获取消息。
- 生产者/producer
- 产生消息的角色,是消息的来源。
- 消费者/consumer
- 有时候也称之为接收者。在消息系统中的角色是消费消息或者说从服务端接收消息。
##2. Zookeeper 通用配置 处理 zookeeper 连接的配置参数,服务端、生产者、消费者都可以配置此参数。
- zk.connect
- :string,null
- zookeeper 连接字符串,例如:localhost:2181 或者 192.168.1.1:2181,192.168.1.2:2181/jafka
- zk.sessiontimeout.ms
- :int,6000
- zookeeper 会话超时,单位毫秒
- zk.connectiontimeout.ms
- :int,6000
- zookeeper 的连接超时,单位毫秒
- zk.synctime.ms
##3. 服务端配置
配置一个服务端(broker)的最少参数:
brokerid=1
也就是说只有 brokerid 是必须的,其它参数都是可选的。
- brokerid
- :int
- broker 唯一标识
- port
- :int,9092
- jafka 服务端默认端口
- http.port
- :int, 9093
- jafka http 服务器的默认端口
- hostname
- :string,null
- jafka 绑定的主机名,默认为自动计算
- max.connections
- socket.send.buffer
- socket.receive.buffer
- max.socket.request.bytes
- num.threads
- monitoring.period.secs
- num.partitions
- :int,1
- topic 的默认分区数
- log.dir
- string
- 日志存放目录
- log.file.size
- log.flush.interval
- log.retention.hours
- log.retention.size
- topic.log.retention.hours
- log.cleanup.interval.mins
- enable.zookeeper
- :boolean,false
- 是否启动 zookeeper 配置
- topic.flush.intervals.ms
- log.default.flush.scheduler.interval.ms
- log.default.flush.interval.ms
- 每次强制刷新 log 文件的时间间隔
- topic.partition.count.map
- log.rolling.strategy
##4. 生产者配置
发送消息有两种方式:
- 直接配置发送
- 在这种情况下只需要最少的配置参数是: broker.list=0:localhost:9092
- 通过 zookeeper 配置发送
-
在这种情况下只需要最少的配置参数是:
zk.connect=localhost:2181
显然这两种方式只能二选一。
###4.1 同步发送的配置
- buffer.size
- connect.timeout.ms
- socket.timeout.ms
- reconnect.interval
- reconnect.time.interval.ms
- max.message.size
- host
- port
###4.2 异步发送的配置
- queue.time
- queue.size
- queue.enqueueTimeout.ms
- batch.size
- serializer.class
- callback.handler
- callback.handler.props
- event.handler
- event.handler.props
###4.3 其它配置参数
- broker.list
- :string,null
- 发送消息的目的地,格式为: brokerid:host:port[,brokerid:host,port...]
- partitioner.class
- compression.codec
- compressed.topics
- producer.type
- :string,sync
- 消息发送的方式,同步(sync)或者异步(async)
- zk.read.num.retries
- num.retries
##5. 消费者配置
和发送消息类似,消费消息也有两种方式:
- 直接配置消费消息
在这种情况下最少的配置参数是:
构造 com.sohu.jafka.consumer.SimpleConsumer.SimpleConsumer 对象只需要两个参数: host,port
- 使用 zookeeper
在这种情况下最少的配置参数是:
groupid=adyliu
zk.connect=localhost:2181
所有参数
- groupid
- :string
- 消费者分组信息
- consumerid
- :string,null
- 消费者唯一标识
- socket.timeout.ms
- :int,30*1000
- socket 超时时间,默认 30 秒
- socket.buffersize
- fetchsize
- fetcher.backoff.ms
- 每次抓取之后如果没有抓取到增加抓取时间间隔的毫秒数
- fetcher.backoff.ms.max
- 增加抓取时间间隔的最大毫秒数
- autocommit.enable
- autocommit.interval.ms
- queuedchunks.max
- rebalance.retries.max
- rebalance.backoff.ms
- autooffset.reset
- consumer.timeout.ms
- mirror.topics.whitelist
- mirror.topics.blacklist
- mirror.consumer.numthreads
Language: English | Simple Chinese