当我从节点1查询对等体表时,我不确定为什么我会得到与联系点相同的对等体。
当我将ip更改为46(node2)时,我得到45(node1),但从45(node1)查询,我得到45(node1)
Cluster clusterconn = Cluster.Builder().WithCredentials(txtuser.Text, txtsec.Text).AddContactPoint("192.168.0.45).Build();
ISession Conn_session = clusterconn.Connect("system");
var con_result = Conn_session.Execute("select peer FROM system.peers");
// lstnode.Items.Add(txt_pip.Text);
foreach (var rows in con_result)
{
//var value = row.GetValue<int>("id");
lstnode.Items.Add(rows["peer"].ToString());
}发布于 2015-08-13 02:21:13
您正在看到驱动程序的负载平衡策略的效果。system.peers是一个在每个节点上都不同的本地表。当您使用驱动程序执行查询时,它将在节点之间进行负载平衡,每次都会给出不同的结果。
如果您多次执行并打印结果,您应该会看到节点之间的对等交替。
阅读一些关于负载平衡策略的here。
https://stackoverflow.com/questions/31968770
复制相似问题