记录一下今天解决kafka传输超大图片消费者接收失败问题的过程及收获 项目中需要将实时帧用kafka进行传输,原来帧格式化后的分辨率设置为640x480,大小约为50kb,因后期处理需要更高的分辨率,所以将图片设置为1440x1080,大小约为400kb,结果发现消费者接收不到图片或图片损坏重叠花屏显示。报如下错误:
org.apache.kafka.common.errors.RecordTooLargeException: There are some messages at [Partition=Offset]: {cam1-0=99} whose size is larger than the fetch size 1048576 and hence cannot be ever returned. Increase the fetch size on the client (using max.partition.fetch.bytes), or decrease the maximum message size the broker will allow (using message.max.bytes).原因是kafka默认的参数已经满足不了项目的需求,需要对kafka进行需要调参, 接下来将对本次涉及到的几个kafka参数进行解释
调完这几个参数,重启kafka server,就可以正常传输高分辨率的图片了,但是传输效率确实比原来要降低一些,至于如何平衡功能和效率,后面我还需要慢慢摸索找到最合适的参数方案。
