Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/160.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
Java 使用高级使用者和简单使用者的kafka压缩_Java_C++_Hadoop_Apache Kafka_Snappy - Fatal编程技术网

Java 使用高级使用者和简单使用者的kafka压缩

Java 使用高级使用者和简单使用者的kafka压缩,java,c++,hadoop,apache-kafka,snappy,Java,C++,Hadoop,Apache Kafka,Snappy,在我的应用程序中,我们使用的是Kafka高级消费者,如果生产者和消费者使用java API压缩和解压缩数据,它将使用解压缩后的数据,而不会出现任何问题 P>如果生产者使用 LabdkkaFa>强> C++ API进行压缩(SNAPY或GZIP)会发生什么?java使用者是否能够像在上述情况下一样透明地解压缩。消费者端的获取大小会发生什么变化?这是否也是透明处理的 如果卡夫卡消费者是使用简单消费者模型设计的,会发生什么?我们是否需要对来自生产者的压缩数据进行显式解压缩(假设 LabdkkaFa/

在我的应用程序中,我们使用的是Kafka高级消费者,如果生产者和消费者使用java API压缩和解压缩数据,它将使用解压缩后的数据,而不会出现任何问题

<> P>如果生产者使用<强> LabdkkaFa>强> C++ API进行压缩(SNAPY或GZIP)会发生什么?java使用者是否能够像在上述情况下一样透明地解压缩。消费者端的获取大小会发生什么变化?这是否也是透明处理的

如果卡夫卡消费者是使用简单消费者模型设计的,会发生什么?我们是否需要对来自生产者的压缩数据进行显式解压缩(假设<强> LabdkkaFa/Stult+C++ API使用)。p>

我认为,在生产侧,强压缩> BrutkdkakA<强> C++ API时,高水平消费者可能无法工作。如果我在这里看到其他帖子,请澄清我的错误。与此相反,我发现另一个链接说,如果高级消费者使用,解压应该有效


感谢它们是兼容的,librdkafka使用与Scala/Java客户端相同的压缩和帧

增加
fetch.message.max.bytes
允许使用者在每个请求中获取更大的消息或更大批量的消息,但通常可以保留其默认值,除非生产者生成的消息大于此值-在这种情况下,您还需要增加
message.max.bytes


压缩仅在生产者上配置,消费者端不需要配置,因为每条消息(或一批消息)都标有其压缩类型(无、snappy、gzip等)。

所有这些分布式生产者/代理/消费者的主要思想是无缝、透明地相互协作。这意味着您不应该知道(和关心):

  • 生产者是如何实现的
  • 他们使用什么压缩(如果有)
  • 有多少生产商/经纪人
您的消费者只需要听他的主题/分区,并知道如何处理消息

您可以将其视为web的一个类比:您的浏览器不关心它是如何编写的、运行它的服务器是什么、它是否使用gzip等等。只要他们两个都说http,它就会工作