首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >librdkafka c++库有模拟服务器或代理吗?

librdkafka c++库有模拟服务器或代理吗?
EN

Stack Overflow用户
提问于 2018-03-02 02:08:28
回答 2查看 610关注 0票数 0

librdkafka c++库有没有一个不需要启动kafka服务器就可以进行单元测试的模拟服务器?如果没有,那么有没有一个轻量级的kafka服务器可以简单易用呢?

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

谢谢!

EN

回答 2

Stack Overflow用户

发布于 2018-03-05 14:55:39

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

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

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

Install trivup

代码语言:javascript
复制
$ virtualenv ~/yourPythonVirtualEnv/bin/activate
$ source ~/yourPythonVirtualEnv/bin/activate
$ git clone https://github.com/edenhill/trivup.git
$ cd trivup
$ python setup.py install

启动集群并运行shell

代码语言:javascript
复制
$ 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 
票数 1
EN

Stack Overflow用户

发布于 2020-01-18 04:54:22

是的,从v1.3.0开始,librdkafka提供了mocking功能,但api是实验性的,可能会被移除。从发行说明中:

‘添加了实验性(可能会更改或删除)模拟代理,以使应用程序和librdkafka开发测试更容易。’

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49056070

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档