`
cryolite
  • 浏览: 578286 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

遇到的riak性能问题

阅读更多
1。
遇到一个奇怪的性能问题,多个进程中用riakc_pb_socket put和get有着不同的性能表现。

我的情况是put还好,但是get老是超时(60秒)。

有人在邮件上提到了这个问题,不过和我相反。在这里记录下备忘。
http://lists.basho.com/pipermail/riak-users_lists.basho.com/2013-July/012669.html

查看riak的console.log日志,如果有busy_dist_port记录,说明是erlang节点的缓存被耗尽。
遇到这个问题修改vm.args参数+zdbbl, 增加缓冲容量,容量单位是KB
http://www.erlang.org/doc/man/erl.html#%2bzdbbl

2。
key-filter的性能
Using Key Filters to fetch object keys efficiently

官方文档建议不要在生产环境中对整个bucket遍历,同样,对整个bucket 进行key filter也会有性能问题。

因为list key作为riak pipe的一个phrase,(他们都使用了riak_kv_pipe_listkeys:queue_existing_pipe)


官方性能调优手册:
http://docs.basho.com/riak/latest/cookbooks/Linux-Performance-Tuning/

一些补充:
http长连接200万尝试及调优
http://rdc.taobao.com/blog/cs/?p=1062
分享到:
评论

相关推荐

    tiniest_riak_erlang_book:与Riak和Erlang互动的介绍

    书中还会分享一些最佳实践和常见的陷阱,帮助读者避免在实际操作中遇到问题。 总而言之,《tiniest_riak_erlang_book》虽小,却包含了从Erlang入门到与Riak深度交互的全面知识。对于希望深入理解Riak并掌握其内在...

    NRiak:类似于Riak的对象库,使用JavaScriptNode.js实现。 在制品

    4. **错误处理**:NRiak提供了错误处理机制,确保在遇到问题时能及时捕获并处理。 5. **版本控制**:关注NRiak的版本更新,以利用最新的功能和性能优化。 在实际应用中,NRiak适用于那些需要高可用性、可扩展性的...

    MongoDB面试专题.pdf

    在journaling启用时,如果journal写操作不完整(如遇到中途故障),则在恢复过程中不会回放不完整的条目。MongoDB通过数据库分析器监控操作性能,帮助开发者找出查询瓶颈,提高性能。 MongoDB支持事务和加锁操作,...

    林子雨大数据技术原理及应用第五章课后作业答案.pdf

    关系数据库在Web 2.0应用中遇到的主要问题包括:无法有效管理海量数据、难以应对高并发访问、以及对高可扩展性和高可用性的支持不足。Web 2.0时代的系统往往对实时性要求较低,且不依赖复杂的SQL查询,这使得关系...

    nosql数据库简介.pptx

    NoSQL数据库,全称为"Not Only SQL",是一种非关系型的数据库系统,旨在解决传统关系型数据库在处理大规模数据和高并发场景下遇到的问题。在90年代,由于网站访问量较小,静态网页为主,单一数据库可以满足需求。但...

    分布式数据库相关的教程

    2PC(两阶段提交)和3PC(三阶段提交)是常见的分布式事务协议,但它们可能引发阻塞和性能问题。Paxos和Raft等一致性算法则为分布式系统提供了更灵活的解决方案。 在实践中,我们还会遇到如CAP定理的挑战。CAP原理...

    redis笔记.docx

    图形数据库的优势在于能够利用图结构相关算法,但处理整个图的计算时可能会遇到性能瓶颈。 #### 四、Redis 的特点与历史 Redis 的特点包括但不限于高性能、低延迟、支持多种数据结构等。Redis 支持以下几种键值类型...

    paid_api_test_core:分布式系统的核心项目

    3. **故障恢复机制**:Elixir的进程监控和错误处理机制使得系统在遇到问题时能够自我修复,保证服务的连续性。 4. **分布式数据一致性**:Elixir的Ecto库可能用于处理数据库交互,同时可能结合使用如Cassandra或...

    Cach-Project1Distribuidos

    标题"Cach-Project1Distribuidos"暗示了一个与分布式缓存相关...这个项目可能涵盖了这些概念的实践,通过阅读源代码,我们可以深入了解如何使用JavaScript实现一个分布式缓存系统,以及如何解决在此过程中遇到的挑战。

    transace:分布式事务

    分布式事务通常涉及到跨越多个数据库、服务或节点的操作,这在单体应用和微服务架构中都可能遇到。 首先,我们需要理解ACID(原子性、一致性、隔离性、持久性)原则,这是事务处理的核心概念。原子性保证事务中的...

Global site tag (gtag.js) - Google Analytics