1.官网上下载kafka安装包:http://kafka.apache.org/downloads.html

  2.执行命令运行zookeeper 实例(单点):

   bin/zookeeper-server-start.sh config/zookeeper.properties
 3. 启动kafka broker 服务:
  
bin/kafka-server-start.sh config/server.properties
  其中的
server.properties 有些配置需要修改:
  listeners=PLAINTEXT://hostName:9092
  如果是远程producer,hostname设置为ip,这样远程机器无需设置host.
  log.dir 是broker的日志地址。
 4.在使用go的客户端 Shopify/sarama 包的操作过程:
   (1) go get "github.com/Shopify/sarama"
   (2) 修改config 中的配置:
      c.Version = V0_10_0_0 //使用的是kafka 0.10.0.0的版本
   (3) producer测试代码如下:
package main

import (
"github.com/Shopify/sarama"
"log"
"os"
"strings"
) var logger = log.New(os.Stderr, "[TEST]", log.LstdFlags) func main(){
sarama.Logger = logger config := sarama.NewConfig()
config.ClientID = "newsDataSource"
config.Producer.RequiredAcks = sarama.WaitForAll
config.Producer.Partitioner = sarama.NewRandomPartitioner msg := &sarama.ProducerMessage{}
msg.Topic = "hello"
msg.Partition = int32(-1)
msg.Key = sarama.StringEncoder("key")
msg.Value = sarama.ByteEncoder("hello") producer, err := sarama.NewSyncProducer(strings.Split("localhost:9092", ","), config)
if err != nil {
logger.Printf("Failed to produce message :%s", err )
os.Exit(500)
} defer producer.Close() partition, offset, err := producer.SendMessage(msg)
if err != nil {
logger.Printf("Failed to produce message :%s", err )
}
logger.Printf("partition:%d, offset: %d\n", partition, offset )
}

  


  
 
 

kafka go producer 启动基本配置的更多相关文章

  1. 【转】 详解Kafka生产者Producer配置

    粘贴一下这个配置,与我自己的程序做对比,看看能不能完善我的异步带代码:   -----------------------------------------    详解Kafka生产者Produce ...

  2. kafka 客户端 producer 配置参数

    属性 描述 类型 默认值 bootstrap.servers 用于建立与kafka集群的连接,这个list仅仅影响用于初始化的hosts,来发现全部的servers.格式:host1:port1,ho ...

  3. 【Kafka】Producer配置

    名称 描述 类型 默认值 bootstrap.servers kafka集群地址,ip+端口,以逗号隔开.不管这边配置的是什么服务器,客户端会使用所有的服务器.配置的列表只会影响初始发现所有主机.配置 ...

  4. Kafka学习-Producer和Customer

    在上一篇kafka入门的基础之上,本篇主要介绍Kafka的生产者和消费者. Kafka 生产者 kafka Producer发布消息记录到Kakfa集群.生产者是线程安全的,可以在多个线程之间共享生产 ...

  5. 057 Java中kafka的Producer程序实现

    1.需要启动的服务 这里启动的端口是9092. bin/kafka-console-consumer.sh --topic beifeng --zookeeper linux-hadoop01.ibe ...

  6. Kafka生产者producer简要总结

    Kafka producer在设计上要比consumer简单,不涉及复杂的组管理操作,每个producer都是独立进行工作的,与其他producer实例之间没有关联.Producer的主要功能就是向某 ...

  7. Kafka生产者各种启动参数说明

    首先是启动一个生产者 final String kafkazk="localhost:9092"; String topic="testAPI"; Proper ...

  8. IDEA Spark Streaming Kafka数据源-Producer

    import java.util import org.apache.kafka.clients.producer.{KafkaProducer, ProducerConfig, ProducerRe ...

  9. Kafka学习笔记(6)----Kafka使用Producer发送消息

    1. Kafka的Producer 不论将kafka作为什么样的用途,都少不了的向Broker发送数据或接受数据,Producer就是用于向Kafka发送数据.如下: 2. 添加依赖 pom.xml文 ...

随机推荐

  1. 动态规划 - 最长递增子序列(LIS)

    最长递增子序列是动态规划中经典的问题,详细如下: 在一个已知的序列{a1,a2,...,an}中,取出若干数组组成新的序列{ai1,ai2,...,aim},其中下标i1,i2,...,im保持递增, ...

  2. ESL python调用C模块时传递unicode字符串报错问题解决

    在是用freeswitch时利用ESL的python调用时传递字符串报错 TypeError: in method 'ESLconnection_api', argument 2 of type 'c ...

  3. 第五百八十二天 how can I 坚持

    好吧,是我错了,昨天,做好自己就行了,别人怎么样是别人的事,永远保持一颗单纯向上的心. 时间过得真快,明天又周六了.. 睡觉.

  4. 由tombstone文件解析jni代码过程

    Android开发测试会经常遇到crash. (1)adb shell (2)cd /data/tombstones/ (3)adb pull /data/tombstones/tombston_00 ...

  5. Oracle中 Package与Package body的介绍

    1.Oracle Package的作用: 可以简化应用设计.提高应用性能.实现信息隐藏.子程序重载 2.ORACLE中的function   .package.package   bodies.pro ...

  6. jqeury datatable

    1.自定义列信息    "aoColumnDefs":[                               {                               ...

  7. 特征工程 dataframe格式

    import os import copy import codecs import operator import re from math import log from pyspark.sql ...

  8. Looping Techniques

    [Looping Techniques] 1.When looping through dictionaries, the key and corresponding value can be ret ...

  9. step6----->往工程中添加spring boot项目------->修改pom.xml使得我的project是基于spring boot的,而非直接基于spring framework

    文章内容概述: spring项目组其实有多个projects,如spring IO platform用于管理external dependencies的版本,通过定义BOM(bill of mater ...

  10. rem 和 ::

    -------siwuxie095 rem 和 ::   都是用作批处理注解(等同于各种编程语言中的注释) 注解批处理时,标准写法是写在被注解代码的上一行 REM 在批处理文件或CONFIG.SYS里 ...