您的位置:首页 > 娱乐 > 八卦 > 网页美工设计的要点有哪些_给公司做个网页要多少钱_seo网站优化培训怎么样_3天网站seo优化成为超级品牌

网页美工设计的要点有哪些_给公司做个网页要多少钱_seo网站优化培训怎么样_3天网站seo优化成为超级品牌

2024/12/23 6:05:53 来源:https://blog.csdn.net/an_gentle_killer/article/details/142987255  浏览:    关键词:网页美工设计的要点有哪些_给公司做个网页要多少钱_seo网站优化培训怎么样_3天网站seo优化成为超级品牌
网页美工设计的要点有哪些_给公司做个网页要多少钱_seo网站优化培训怎么样_3天网站seo优化成为超级品牌

org.apache.kafka.common.config.ConfigException: Invalid value 0 for configuration acks: Expected value to be a string, but it was a java.lang.Integer

场景描述:
单个kafka使用springboot框架自带的 yml 配置完全OK(因为底层会帮我们处理好类型)
但是我用到了多个kafka,并且kafka的信息都是从远端获取的,那么我创建消费者和创建生产者都是动态的,但是当我使用其中一个生产者发送消息的时候爆出上述错误;

根本原因 acks的配置值希望是 string,但是我写的是integer

源码解释一下:
在这里插入图片描述
getstring
在这里插入图片描述
测试一下发现会报错:
在这里插入图片描述

修改后:

    /*** 构造生产者配置* @param ip* @param port* @return*/private Map<String, Object> buildDefaultKafkaProducerMap(String ip, Integer port) {Map<String, Object> propertiesMap = new HashMap<>();propertiesMap.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, ip + ":" + port);propertiesMap.put(ProducerConfig.RETRIES_CONFIG, 0);propertiesMap.put(ProducerConfig.BATCH_SIZE_CONFIG, 20960);//单独批次发送数据量propertiesMap.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, ByteArraySerializer.class.getName());propertiesMap.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, ByteArraySerializer.class.getName());propertiesMap.put(ProducerConfig.ACKS_CONFIG, "0");propertiesMap.put(ProducerConfig.BUFFER_MEMORY_CONFIG, 67108864);//发送数据缓存propertiesMap.put(ProducerConfig.LINGER_MS_CONFIG, 10);//超过10ms未发送则强制发送return propertiesMap;}/*** 构造消费者配置* @param ip* @param port* @return*/private Map<String, Object> buildDefaultKafkaConsumerMap(String ip, Integer port) {Map<String, Object> propertiesMap = new HashMap<>();propertiesMap.put(ConsumerConfig.BOOTSTRAP_SERVERS_CONFIG, ip + ":" + port);//earliest:如果消费者组没有已提交的偏移量(即新的消费者组),则从主题的最早消息开始消费//latest:如果消费者组没有已提交的偏移量,则从最新的消息开始消费(即从消费者启动之后生成的消息)propertiesMap.put(ConsumerConfig.AUTO_OFFSET_RESET_CONFIG, consumerAutoOffsetReset);//propertiesMap.put(ConsumerConfig.AUTO_COMMIT_INTERVAL_MS_CONFIG, 20);//自动提交时间间隔propertiesMap.put(ConsumerConfig.ENABLE_AUTO_COMMIT_CONFIG, false);//不自动提交偏移量 手动提交propertiesMap.put(ConsumerConfig.KEY_DESERIALIZER_CLASS_CONFIG, ByteArrayDeserializer.class.getName());propertiesMap.put(ConsumerConfig.VALUE_DESERIALIZER_CLASS_CONFIG, ByteArrayDeserializer.class.getName());propertiesMap.put(ConsumerConfig.SESSION_TIMEOUT_MS_CONFIG, 60000);//在时间内没有收到心跳,则该消费者会被剔除组propertiesMap.put(ConsumerConfig.GROUP_ID_CONFIG, consumerGroupId);propertiesMap.put(ConsumerConfig.MAX_POLL_RECORDS_CONFIG, 50);//单次拉取50条数据return propertiesMap;}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com