Cassandra经常被问到的问题(三)

栏目: 数据库 · 发布时间: 7年前

内容简介:Cassandra经常被问到的问题(三)

14、是不是单个seed意味着单点故障?

即便没有seed节点,集群也可以运行和重启,但是不能再往集群里增加节点。还是推荐在生产系统中配置多个种子节点。

15、为什么不可以在jconsole里调用某个jmx方法呢?

一些JMX操作的参数是个数组,而Jconsole并不支持数组型参数。对于那些不能用jconsole调用的操作(在jconsole里点击按钮无效)。有需要自己写一个JMX客户端去调用,或者使用一个支持数组的jmx监控工具。

16、为什么我会在日志文件里看到 “… messages dropped …”这样的信息?

这是cassandra在面对超出自己处理能力的请求时,为了保护自己做出的流控措施。

一个节点接收到其它节点发送过来的消息,但是在他们合适的超时时间内不能得到处理(具体参考 read_request_timeout, write_request_timeout等配置项)。就会被丢弃,而不是处理(因为接受用户请求的节点也就是协调节点不会再等这个响应返回)

对于写,这意味着它的请求不会被写入所有的副本,这个一致性将会被读修复、hints或者是人工修复等方式修复。因为这,一个写操作返回给客户端的结果就是超时的。

对于读,意味着一个读请求可能没有完成。负载流控是cassandra架构的一部分,如果这个问题一直持续下去,这标志着你的节点或者集群已经超载了。

17、Cassandra因为java.lang.OutOfMemoryError: Map failed挂掉了

如果cassandra挂掉的时候输出“Map failed”的消息,表示操作系统不允许 java 锁定更多的内存。在 linux 里,内存锁定是有限制的,你可以通过/proc/ /limits确认,并提高它(比如适应ulimit命令)。还有vm.max_map_cout参数。注意debian安装包会自动为你调整这些参数。

18、如果再同一时刻发生两次更新会发生什么?

更新顺序必须是可交换的,因为他们很有可能到达不同副本的顺序是不一样的。只要cassandra有一个确定的方法选出这个赢家(相同的时间戳),那么这在其它节点也是一样的,这是一个重要的实现细节。也就是说,对于相同时间戳的操作,Cassandra遵循以下两个原则:第一:删除要优先于更新和插入,第二:如果两个都是更新,那个在语法上比较大的更新会被选中。

19、为什么在加入一个新节点的时候,会有Stream failed错误?

两个可能性:

GC可能导致的长时间暂停可能会扰乱传输进程

在后台执行的压缩会导致传输时间太长从而TCP连接断开。

对于第一种情况,建议在应用中经常的进行GC优化,

第二种情况,你需要设置系统的TCP keepalive参数短一些(linux中默认是很长的),尝试执行下面的语句:

sudo /sbin/sysctl -w net.ipv4.tcp_keepalive_time=60 net.ipv4.tcp_keepalive_intvl=60 net.ipv4.tcp_keepalive_probes=5

如果要让这些配置永久有效,需要把他们加入到/etc/sysctl.conf文件中。

注意:GCE(Google的云服务吧)的防火墙经常切断TCP连接,当一个连接超过10分钟不活动的话。这种情况强烈推荐执行上述命令。


以上所述就是小编给大家介绍的《Cassandra经常被问到的问题(三)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

jQuery实战(第2版)

jQuery实战(第2版)

[美]Bear Bibeault、[美]Yehuda Katz / 三生石上 / 人民邮电出版社 / 2012-3 / 69.00元

jQuery 是目前最受欢迎的JavaScript/Ajax 库之一,能用最少的代码实现最多的功能。本书全面介绍jQuery 知识,展示如何遍历HTML 文档、处理事件、执行动画、给网页添加Ajax 以及jQuery UI 。书中紧紧地围绕“用实际的示例来解释每一个新概念”这一宗旨,生动描述了jQuery 如何与其他工具和框架交互以及如何生成jQuery 插件。 本书适合各层次Web 开发人......一起来看看 《jQuery实战(第2版)》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具