您的位置:首页 > 运维架构 > 网站架构

多点加锁实现负载均衡机制

2015-08-18 22:51 169 查看

加锁多点的定义

加锁多点,是通过对每个服务进程进行加锁控制的方式来实现多点部署,达到负载均衡的目的。

加锁多点的优势

1.        扩展性

无限制的扩展性。扩展服务进程后,只须设定唯一的锁标签即可。

2.        容错性

通过监控服务的死锁唤醒,可以对数据进行补偿处理

3.        负载均衡

通过控制批量的量,可以达到较好的负载均衡。

加锁多点的架构

 

锁的结构

字段

名称

类型

ServiceLockTag

锁标签

Guid

ModifyOn

变更时间

DateTime

 

加锁多点的主要步骤

1.        批量加锁

每个服务在处理数据之前,先进行批量加锁数据。批量的多少以单个服务进程的处理能力为准。所加锁为乐观锁,这样保证多个服务并发加锁数据时,数据最终能够成功为最后的服务加锁。每个服务进程都有自己的锁标签,作为区分于其它服务进程的标识,锁标签可在配置文件中设置。

2.        加锁查询

批量加锁后,服务进程查询对应标签的数据。

3.        批量解锁

         数据处理完成后进行解锁处理,可单条处理,也可批量处理。

4.        死锁唤醒

         对加锁超过一定时限的数据进行解锁处理。这样可防止单个服务进程异常造成数据无法处理的状况。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  负载均衡 架构