关于Solr性能优化实践

先写个基本的内容,记录下这一阶段自己的测试情况。为了优化solr的建索引性能,我们做了很多尝试,所以也测试了很多种情况,结果虽然不能尽如人意,写下给大家也给自己留个参考吧。

环境情况

我们的主机性能一般,4-8个cpu、内存大概是16G内存;报文大小大概是0.2k左右。

测试情况

1、Hash路由模式
composited方式,性能最好的是在SSD磁盘下,用两个solr节点;有两个程序,每个程序2个线程,同时发,速度大概是5.8WTPS,折合成性能大概是15MB/s。

2、直接路由
implicit方式,性能竟然比composited方式差,在普通硬盘下,一个程序1个线程,2.8WTPS。
直接路由模式同时向一个collection发的话,速度大概是4.6WTPS。

3、多collection方式
两个collection情况下,确实可以提高建索引的速度,在普通磁盘下,同时向两个collection发,速度也可以达到5.8WTPS,如果同时向一个collection发达到速度只有4WTPS左右。

4、多机器集群测试
五台机器组成solr云集群:
用5个程序向5个solr的集群发第一轮测试结果: 7.8W,速度20MB/s。
5个程序, 10个线程,测试出来速度10WTPS,速度27MB/s。
资源占用大概每个6-9G内存,cpu的占用稳定在300%左右。

5、测试了数据合并
1)测试了多数据的合并,字段增加了,发现效率没有提升,还有所降低。
2)测试了字段多值问题,性能没有提升,而且不好分析。

结论

1、每个物理机器新建2个solr节点(数量根据资源来),然后每个程序启动2个线程,采用非直接路由模式速度更好。
2、如果直接路由模式,整体速度可能更好,直接路由模式整体速度更好,单机效果反而不好,可能我队列设置和线程数量设置有问题。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,828评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,955评论 25 709
  • 2017年7月2日,日拱一卒,积硅步,精进未来的自己。 今日晨读素材中有这样一段话—— 现代人长期处于一种随时在线...
    凡尘花仙子阅读 1,454评论 0 2
  • 今天收获不是一般的大,首先运用老师教的方法成功招到两个代理,变被动销售为主动出击,彻底改变了守株待兔的习惯! 第二...
    好心情520阅读 1,859评论 0 0
  • 感谢我的叔叔,感谢叔叔在我们年幼时给我们和生活带来的期盼向往。让我们体会到兄弟间的无私帮助。 记得每到过年,叔叔一...
    helen6616阅读 1,454评论 0 0

友情链接更多精彩内容