作者回复: 是的
作者回复: 如果你并没有共享KafkaProducer实例,那么每个生产者最好设置成不同的transactional.id。2.0版本开始支持ACL前缀,可以用kafka-acls.sh --resource-pattern-type prefixed 一试
作者回复: mount -l,默认是开启的,如果发现noatime则是关闭的。Linux 2.6.30引入了relatime。有了relatime,atime的更新时机被缩小了,如果atime=mtime就不会被更新了。
作者回复: 没有一定之规。不过据官网文章,单broker最多能承受2000个分区,这个和性能还是有很大关系的。毕竟分区数越多,物理IO性能就可能越差
作者回复: 还是consumer和broker版本必须一致才能使用zero copy这样的特性 --- 是的,否则就要在broker端做消息转换,这样消息对象会在jvm堆上重建,丧失了zero copy特性。
作者回复: 关闭自动leader均衡,手动调整leader迁移是目前比较好的做法
作者回复: 操作系统会被最近读取的page缓存起来,所以会“污染”页缓存
作者回复: 读物理磁盘,磁盘读通常是很好的
作者回复: "producer版本与broker不一致时,也会降低性能" --- 不会的