【发布时间】:2015-03-21 21:19:36
【问题描述】:
我是 Cassandra 的新手。
我在两台 Debian VMware 机器上创建了 2 个 cassandra 2.1 节点。在 asp.net mvc 中,我使用了 datastax 驱动程序 2.1.5,实际上没有任何问题,但是当我关闭或禁用其中一个节点上的网络时,应用程序似乎有 5 或 10 秒的延迟来自动连接其他节点。
当两个节点启动时,查询在 c# 中运行 00:00:00.0620413 秒 当一个节点关闭时,查询运行 00:00:10.0607187 秒。每刷新一次页面延迟 10 秒,当两个节点同时运行时,查询在 1 秒以下执行。
我的代码:
Cluster cluster = Cluster.Builder()
.AddContactPoints("192.168.0.1", "192.168.0.")
.WithRetryPolicy(DowngradingConsistencyRetryPolicy.Instance)
.WithReconnectionPolicy(new FixedReconnectionPolicy(0, 10))
.WithLoadBalancingPolicy(
new TokenAwarePolicy(new DCAwareRoundRobinPolicy()))
.Build();
我在两个节点上的配置: cluster_name: '测试集群' 代币数量:256 种子提供者: - 类名:org.apache.cassandra.locator.SimpleSeedProvider 参数: - 种子:“192.168.0.1, 192.168.0.2” endpoint_snitch: SimpleSnitch
在节点 1 中: 听地址:192.168.0.1 rpc_address:192.168.0.1
在节点 2 中: 听地址:192.168.0.2 rpc_address:192.168.0.2
我的密钥空间: 创建密钥空间 mykeyspace WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 2 };
【问题讨论】:
-
启用驱动程序日志以检查发生了什么,同时检查“实时”节点的 cassandra 日志。