1. 程式人生 > >kafka 系列(三)開發環境配置

kafka 系列(三)開發環境配置

kafka的開發,基於java的方式,使用maven管理jar包依賴。

我主要是基於C/c++,採用了librdkafka 。

librdkafka 是Apache  Kafka  客戶端C語言的高效能實現, 能夠提供可靠並且表現優秀的客戶端,同時它也提供比較初級的C++介面,提供了Kafka生產者、消費者介面。

1.     librdkafka的安裝

首先在 https://github.com/edenhill/librdkafka 下載 librdkafka-master.zip,上傳至linux;

yum install -y unzip zip 
unzip librdkafka-master.zip

yum -y update gcc
yum -y install gcc+ gcc-c++ 

以上兩行沒有的話configure出錯  
mklove/modules/configure.base: line 1183: c++: command not found

cd librdkafka-master
chmod 777 configure lds-gen.py
./configure
make
make install     

          最終標頭檔案和庫檔案會分別安裝在

         /usr/local/include/librdkafka
         /usr/local/lib       

echo "/usr/local/lib" >> /etc/ld.so.conf
ldconfig
         
檢視結果如下:

[[email protected] test]# ll /usr/local/lib
total 22972
lrwxrwxrwx 1 root root       12 Jul 17 15:13 librdkafka -> librdkafka.1
lrwxrwxrwx 1 root root       14 Jul 17 15:13 librdkafka++ -> librdkafka++.1
-rwxr-xr-x 1 root root 14274004 Jul 17 15:22 librdkafka.a
-rwxr-xr-x 1 root root  2493016 Jul 17 15:22 librdkafka++.a
lrwxrwxrwx 1 root root       15 Jul 17 15:22 librdkafka.so -> librdkafka.so.1
lrwxrwxrwx 1 root root       17 Jul 17 15:22 librdkafka++.so -> librdkafka++.so.1
-rwxr-xr-x 1 root root  5783120 Jul 17 15:22 librdkafka.so.1
-rwxr-xr-x 1 root root   964000 Jul 17 15:22 librdkafka++.so.1
drwxr-xr-x 2 root root     4096 Jul 17 15:22 pkgconfig
[
[email protected]
test]# ll /usr/local/include/librdkafka total 256 -rwxr-xr-x 1 root root  74175 Jul 17 15:22 rdkafkacpp.h -rwxr-xr-x 1 root root 182959 Jul 17 15:22 rdkafka.h

          2.  開發實踐          

         包含標頭檔案 #include "librdkafka/rdkafka.h"
        編譯過程中出錯: 

/usr/bin/ld: cannot find -lz  

解決:
yum install zlib-devel

gcc my_consumer.c -o my_consumer  -lrdkafka -lz -lpthread -lrt
gcc my_producer.c -o my_producer -lrdkafka -lz -lpthread -lrt


./my_producer localhost:9092 test_topic

./my_consumer -b localhost:9092 -t test_topic

相關推薦

kafka 系列開發環境配置

kafka的開發,基於java的方式,使用maven管理jar包依賴。 我主要是基於C/c++,採用了librdkafka 。 librdkafka 是Apache  Kafka  客戶端C語言的高效能實現, 能夠提供可靠並且表現優秀的客戶端,同時它也提供比較初級的C++

MongoDB深入學習系列---開發環境配置及工具介紹

                現在隨著網際網路應用的不斷髮展,傳統的關係型強事務型資料庫在某些要求不高的環境,高強度訪問情況下並不佔優,所以今天我們來研究一下記憶體資料庫中的Mongodb,MongoDB是文件型資料庫,他屬於記憶體資料庫,但是他也可以持久化到磁碟,所以根

微信點餐系統-開發環境配置

name mir 網絡配置 8.0 本地 ava 查看 col rem 開發環境配置: 虛擬機是課程提供的,裏面軟件都已經配置好 虛擬機配置: 虛擬機說明文檔 VitualBix-6.0.0 虛擬機系統 centos7.3 賬號 root 密碼123456 包括

android 敏捷開發系列——《環境部署》

書接上文,上次我們瞭解了敏捷開發的架構,但是利用我們普通的開發工具Eclipse的Ant構建是無法完成專案依賴等工作的,所以在開發之前我們需要準備好以下開發環境  maven + nexus + hudson + git 注:本文基本環境 服務端系統為ubuntu13.0

樹莓派配置完全手冊開發環境的安裝及配置

3.1和OpenCV環境的構建 在嵌入式開發過程中,由於樹莓派的機能限制,以及操作習慣的差異,我們首先需要在PC端進行初步的編寫及測試,待編譯通過後再將程式碼移植到樹莓派端進行適配,所以PC端開發環

從零開始學習音視頻編程技術 開發環境搭建Qt4.86手動設置環境,主要就是設置g++和qmake,比較透徹,附下載鏈接

路徑 details 分享 baidu 末尾 是我 其中 找到 source 1.先下載安裝Qt 我們使用的版本是4.8。 可以自行百度下載也可以從下面的網盤地址下載: Qt庫和編譯器下載: 鏈接:http://pan.baidu.com/s/1hrUxLIG 密碼

java學習筆記開發環境配置

我現在使用的windows平臺,主要介紹win平臺的安裝。                                  點選之後,進入下載頁面,                                    首先接受這個協議,然後下載自己對應的包。這

Netty實戰 IM即時通訊系統Netty環境配置

## Netty實戰 IM即時通訊系統(三)Netty環境配置 零、 目錄 IM系統簡介 Netty 簡介 Netty 環境配置 服務端啟動流程 實戰: 客戶端和服務端雙向通訊 資料傳輸載體ByteBuf介紹

asp.net——開發環境配置IIS安裝

以win7系統為例,其他型別。 1.安裝IIS 開啟檔案搜尋欄輸入:控制面板-》程式-》程式和功能-》開啟或關閉Windows功能,在開啟的對話方塊,選中Internet資訊服務打鉤。 啟動瀏覽器,會顯示IIS7的主頁,它的物理路徑為:C:\inetp

Docker | 學習系列 Docker如何配置映象加速器

國內訪問Docker Hub的速度很不穩定,有時甚至出現連線不上的情況。本節我們來為Docker配置映象加速器,從而解決這個問題。目前國內很多雲服務商都提供了映象加速的服務。常用的映象加速器有:阿里雲加速器、DaoCloud加速器等。各廠商映象加速器的使用方式大致類似,筆者以阿里雲加速器為例進

Ubuntu14.04全分散式安裝hadoop2.7.2jdk環境配置+hadoop單機

前文回顧: 三臺電腦,一臺做主機,兩臺做從機。主機名分別是 master,slave1,slave2,ip分別是192.168.235.1~3 系統:ubuntu14.04 jdk:1.8.0_91 Hadoop: 2.7.2 (stable)

Kafka 系列—— Kafka 生產者詳解

一、生產者傳送訊息的過程 首先介紹一下 Kafka 生產者傳送訊息的過程: Kafka 會將傳送訊息包裝為 ProducerRecord 物件, ProducerRecord 物件包含了目標主題和要傳送的內容,同時還可以指定鍵和分割槽。在傳送 ProducerRecord 物件前,生產者會先把鍵和值物件序列

SpringMVC 學習 十 SSM環境搭建springMVC檔案配置 springMVC學習 註解開發環境搭建

SpringMVC檔案配置的詳細過程,可以檢視springMVC環境搭建的註解配置篇《springMVC學習三 註解開發環境搭建》 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns:xsi="http://www.w3.org/2

SpringBoot入門系列---基於eclipse配置springboot開發環境

SpringBoot 大概從2016年開始流行吧,經過1年多的發展,已經有成為主流框架的趨勢,為什麼呢,springboot優點在哪? 1.springboot就是對springMVC

wifi認證Portal開發系列:portal協議

tro spa size http log ron 認證 gin auto 中國移動WLAN業務PORTAL協議規範介紹 wifi認證Portal開發系列(三):portal協議

CentOS 7之Postfix部署系列postfix和Dovecot配置

-o art 4.2 water 修改 ins har fir mail -----提供AD\Exchange\Lync\Sharepoint\CRM\SC\O365等微軟產品實施及外包,QQ:185426445.電話18666943750https://tecadmin.

windows下配置React-NativeAndroid開發環境總結

首先配置環境我們需要用到以下工具: node.js react-native-cli Android Studio JDK(1.8以上) SDK python 1.安裝node.js和react-native-cli命令列工具

深入淺出maven系列(三)---maven構建ssh工程父工程與子模組的拆分與耦合 前一節我們初識了maven並且掌握了maven的常規使用,這一節就來講講它的一個重要的場景,也就是通過maven將一個ssh專案分隔為不同的幾個部門獨立開發,很重要,加油!!!

        前一節我們初識了maven並且掌握了maven的常規使用,這一節就來講講它的一個重要的場景,也就是通過maven將一個ssh專案分隔為不同的幾個部門獨立開發,很重要,加油!!! 一、maven父工

使用SpringBoot2.0搭建企業級應用開發框架環境配置

血淚背景 在將甲方粑粑的想法實踐於世人之前,我們的專案至少要經歷 開發→測試→執行 3個環境,對於不同的環境我們可能需要連線不同的資料庫、設定不同的上傳路徑、呼叫不同地址的遠端服務等等,這就要求必須有不同的配置來滿足多環境需求 如果我們是通過打包前手動修改檔案內容的話,會由

Linuxcentos 7系列----Java環境的搭建

  上篇博文中,我已經介紹了XShell遠端連線虛擬機器的過程和要注意的一些事項,這篇博文,我就通過XShell遠端連線虛擬機器來搭建java環境,下面是搭建的一些過程。   首先,既然是安裝jdk,那麼肯定是要下載jdk的了,本人不喜歡在linux下用命令線上