Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache kafka 当Kafka broker从producer获取消息时,它是否对页面缓存/磁盘执行零拷贝写入?如果是的话,它如何进行任何健全性检查?_Apache Kafka - Fatal编程技术网

Apache kafka 当Kafka broker从producer获取消息时,它是否对页面缓存/磁盘执行零拷贝写入?如果是的话,它如何进行任何健全性检查?

Apache kafka 当Kafka broker从producer获取消息时,它是否对页面缓存/磁盘执行零拷贝写入?如果是的话,它如何进行任何健全性检查?,apache-kafka,Apache Kafka,我到处都读到卡夫卡在消费者轮询消息时进行零拷贝读取,但我试图了解制作人写入期间是否发生零拷贝(所以忽略消费者端) 我看到Filechannel.transferTo将执行零拷贝,但这只是管道化流,但是代理是否需要在刷新数据之前执行一些检查呢?比如说,如果缓冲区的长度>m,则flush否则将保留在缓冲区中,或者说其他一些健全性检查或涉及缓冲区的其他应用程序逻辑。要做到这一点,缓冲区需要在用户空间中可访问(假设卡夫卡没有为此目的使用mmap)?如果是这样,那么内核缓冲区是否需要复制到用户空间?写端基

我到处都读到卡夫卡在消费者轮询消息时进行零拷贝读取,但我试图了解制作人写入期间是否发生零拷贝(所以忽略消费者端)


我看到
Filechannel.transferTo
将执行零拷贝,但这只是管道化流,但是代理是否需要在刷新数据之前执行一些检查呢?比如说,如果缓冲区的长度>m,则flush否则将保留在缓冲区中,或者说其他一些健全性检查或涉及缓冲区的其他应用程序逻辑。要做到这一点,缓冲区需要在用户空间中可访问(假设卡夫卡没有为此目的使用mmap)?如果是这样,那么内核缓冲区是否需要复制到用户空间?写端基本上没有零拷贝。

您指的是管道的客户端还是代理端?代理端(从客户端/生产者接收数据后)