GBASE南大通用集群负载均衡

如果我们需要将连接请求分摊到集群的每个节点上时,可以使用集群负载均衡功能(该功能需要 GBASE南大通用 ADO.NET 8.3.81.53 及以上版本)。集群负载均衡

功能与集群高可用功能都属于客户端负载均衡解决方案。使用GBASE南大通用此功能时,需同时设置连接串的 Failover、IpList、GClusterID 参数。

GBASE南大通用集群负载均衡支持多集群的情况,即在一个应用中可以指定多个集群共同分担负载。但在每个连接串中只能指明一个 GClusterID 和此集群的 IpList。

假设存在如下场景:

 现有集群 G1 中存在三个节点,18 个连接请求。节点 1:192.168.0.2 节点 2:192.168.0.3 节点 3:192.168.0.4。

 连接串中设置 server、iplist 和 GClusterID 参数。

String _ConnString =

‚server=192.168.0.2;failover=true;iplist=192.168.0.3;192.168.0.

4;gclusterid=g1" ;

 接口会将 18 个连接请求分摊在节点 1、节点 2 和节点 3 上,分摊后每

个节点上会有 6 个请求线程。

注:当某个连接请求访问集群节点 1 时,接口发现节点 1 故障后,在后续的连接请求到来时接口将不再给节点 1 分配请求,而会将请求分配给节点 2(若节点 2 故障时会分配给节点 3)。

下面例子介绍如何开启集群负载均衡。例子中会创建 18 个连接对象,使用192.168.0.2、192.168.0.3、192.168.0.4 做为负载均摊节点。

C# 示例:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Diagnostics;

using System.Data;

using GBase.Data.GBaseClient;

namespace UsingAdoNet

{

class Program

{

static void Main(string[] args)

{

String _ConnStr = "server=192.168.0.2;user

id=root;password=1;database=test;port=5258;pooling=false;failover=tr

ue;iplist=192.168.0.3, 192.168.0.4;gclusterid=g1";

GBaseConnection[] _Conn = new GBaseConnection[18];

try

{

for (int i = 0; i < _Conn.Length; i++)

{

_Conn[i] = new GBaseConnection(_ConnStr);

_Conn[i].Open();

Thread.Sleep(2000);

}

}

catch (System.Exception ex)

{

Assert.Fail(ex.Message);

}

finally

{

for (int i = 0; i < _Conn.Length; i++)

{

if (_Conn[i] != null)

{

if (_Conn[i].State ==

System.Data.ConnectionState.Open )

_Conn[i].Close();

}

}

}

}

}

}

相关推荐
敲上瘾1 小时前
MySQL数据库表的约束
linux·数据库·sql·mysql·数据库开发·数据库架构·数据库系统
努力的搬砖人.1 小时前
SQLite 转换为 MySQL 数据库
数据库·mysql·sqlite
2301_803297751 小时前
Shell编程值正则表达式和文本处理器
数据库·mysql·正则表达式
TDengine (老段)2 小时前
基于 TSBS 标准数据集下 TimescaleDB、InfluxDB 与 TDengine 性能对比测试报告
java·大数据·开发语言·数据库·时序数据库·tdengine·iotdb
TDengine (老段)2 小时前
TDengine 在金融领域的应用
大数据·数据库·物联网·金融·时序数据库·tdengine·涛思数据
标贝科技2 小时前
标贝科技:大模型领域数据标注的重要性与标注类型分享
数据库·人工智能
野木香2 小时前
mysql8常用sql语句
数据库·sql·mysql
hycccccch2 小时前
Redis的IO多路复用
数据库·redis·缓存
不再幻想,脚踏实地3 小时前
Spring Boot配置文件
java·数据库·spring boot
_extraordinary_3 小时前
MySQL 事务(二)
android·数据库·mysql