zoukankan      html  css  js  c++  java
  • kafka在虚拟机环境的优化

          首先是,多磁盘的并发的问题。不管怎么说,虚拟机环境至少剥夺了单个kafka同时使用多个磁盘的优势。也就意味着,在同一个虚拟机,同一个topic,最好只有一partition;当然,不同topic之间partition如果同时生产-消费也会互相影响,但不一定会同时在高峰(同个topic一定)。构建较大集群(在不同物理机)仍然能够保持并发优势。
     
          其次,写优先和不稳定也是需要考虑问题。如果多个topic同时写入,或者其他虚拟机抢占资源,可能会导致消费缓慢。因此,监控就显得特别重要,对于消费过慢的partition 暂停写入。由于pagecache默认会使用所有可用内存,增加内存可以减少flush到磁盘的次数,使得读取(消费)更加顺利。
     
         另外,为了保证读写连续性,kafka自身及其他服务不要和log.dir共享磁盘。在美团虚拟机上,可以考虑将kafka 安装在系统磁盘, 数据盘(/opt)完全用于日志存储。
     
          总结一下,kafka在虚拟机环境的优化有三点:
          第一,组建较大集群,并保
    证同一个topic的不同partition位于不同虚拟机(所以在不同的磁盘)
          第二,监控,对于消费过慢的partition(所在的broker),暂停写入(生产),等待消费
          第三,将kafka安装在系统盘,
    数据盘(/opt)完全用于消息存储。数据盘上不安装其他服务

     

           不得不提的是,以上结论在美团办公云(读取200mb/s +)上测试有明显的表现;。但是,良好的配置可以提升稳定性,比如出现多个topic同时达到高峰,或者出现别的虚          拟机抢占资源的时候,通常更不容易出现故障。

    转载自:http://blog.csdn.net/lizhitao/article/details/41777571

  • 相关阅读:
    Sublime Text 3 绝对神器
    spring 笔记3: Spring 多环境配置文件切换
    elk-logstash: window下指定jdk目录
    通过slf4j/log4j的MDC/NDC 实现日志追踪
    spring 笔记2:Spring MVC : Did not find handler method for 问题的解决
    mysql一机多实例安装记录
    Java:通过反射复制父类字段到子类。
    mybatis研究:select性能对比
    spring " expected single matching bean but found 2" 问题一例。
    数组去重复
  • 原文地址:https://www.cnblogs.com/Mandylover/p/5143363.html
Copyright © 2011-2022 走看看