-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
windows分支使用VS2022编译成功后,_include下没有kafka相关的头文件 #1465
Comments
是的,kafka目前我们没有能力维护windows的。 另外,你没有看到kafka的header,是因为编译时,需要加上KAFKA=y。当然,代码有点老,后面的更新我们都没有加上。 |
make Kafka=y 是用来生成kafka_cli客户端示例程序的吧?没有上图的头文件,示例也编译不过的。 |
是KAFKA=y吧,全大写,y是小写。我感觉是区分大小写的。 |
要不我来移植一下吧。然后麻烦帮我们试试最新代码能不能用。 |
@LZUXK 你好,我合进windows分支了,麻烦帮我们再试一下。谢谢。 |
@Barenboim 是的,我很想使用起来,但是我没法使用。我可能没描述清楚我遇到的问题,我再上传两张图片描述一下。 |
图片上传有问题,看不到啊。 |
还没编译过。但是我好像有点明白了,我再研究试试。 |
好的,麻烦帮我们跟进一下问题。随时交流。 |
你好,麻烦用最新windows分支代码再试一下! |
最新的windows分支可以编译通过了,kafka也成功fetch到消息了。但是我有一个问题:kafka任务的回调函数为什么不是阻塞到等fetch到消息后再调用的,导致Kafka客户端持续消费的时候,kafka任务大部分时间下在空跑。 |
啊,这个有个timeout可以设置的吧?我看一下。肯定是可以等消息再callback,不会一直空跑的。 |
参考一下文档中给出的 |
kafka客户端持续消费的任务我是程序一开始就启动的,我无法知道什么时候会有消息过来,可能一个小时,可能一天,设置这个fetch_timeout不太行吧。我只能一个任务接着一个任务的create? |
假如设置1000ms的fetch_timeout,假如消息一个小时后才生产出来,那是不是有3000多个任务是空跑的 |
这个没什么关系的啊,一秒一个请求。这里你非要改,改成一个小时也没关系的。 |
我的意思不是改fetch_timeout,我的意思是是否可以第一个任务就一直阻塞等有消息生产出来了,开始回调函数,然后再接着开始第下一个消费任务。因为我之前用rabbitmq是这样的,循环消费消息是一开始是阻塞的,等收到第一个消息后才开始接下来的逻辑。我的想法是订阅消息,不应该是有推送这么一说嘛。为什么还要主动请求消费消息。 |
那不就是fetch timeout无限吗?kafka本来就要给server发一个fetch timeout的,我们默认是100ms。你想等有消息再回调,那就设置一个比较长的fetch timeout就可以了,这都是参数设置的问题。fetch和推送不是一回事吗?你推送也可以有超时啊。一秒超时一次不会有什么问题。如果你不想,那就一小时也行,但不要纠结于有超时这个问题。 |
还是说你想一个callback被调用多次?我们一个task都是只回调一次,然后重新创建的。 你想要多次回调,可以在我们这个的基础上再封装一个函数,完成你想要的功能。 |
哦。好的,明白。 |
拉取的2024-1-05最新的代码,CMAKE配置(VS2022,X64),生成.sln,用vs2022打开选择ALL_BUILD,12个全部生成成功。查看_include\workflow文件夹下面没有kafka相关的头文件。
The text was updated successfully, but these errors were encountered: