librdkafka c ++库是否有模拟服务器或代理?

问题描述 投票:0回答:1

librdkafka c ++库是否有一个用于单元测试的模拟服务器,它不需要你启动kafka服务器?如果没有,那么是否有一个简单易用的轻量级kafka服务器?

librdkafka库中的示例和单元测试是否需要运行kafka服务器?如果不是它使用的是什么?我看到它列出了localhost:9092,启动时是否会启动自己的模拟代理?

谢谢!

c++ unit-testing apache-kafka
1个回答
0
投票

librdkafka没有模拟代理,它依赖于连接到由至少3个代理组成的真正的Apache Kafka集群。将test.conf配置文件传递给测试以指出引导代理地址,et.al。

为了简化这个过程,我编写了trivup工具,它自动在本地机器上设置一个代理集群,配置为SASL(PLAIN,SCRAM,Kerberos),SSL或任何需要测试的环境。还配置并启动了诸如Zookeeper或Kerberos KDC等辅助组件。

测试完成后,群集将被拆除并移除。

安装trivup

$ virtualenv ~/yourPythonVirtualEnv/bin/activate
$ source ~/yourPythonVirtualEnv/bin/activate
$ git clone https://github.com/edenhill/trivup.git
$ cd trivup
$ python setup.py install

启动集群并运行shell

$ cd ~/librdkafka/tests
$ ./interactive_broker_version.py 1.0.0
(trivup-shell)$ echo $BROKERS
(trivup-shell)$ make   # to run tests
...
(trivup-shell)$ exit   # stop cluster 
© www.soinside.com 2019 - 2024. All rights reserved.