zoukankan      html  css  js  c++  java
  • 多点加锁实现负载均衡机制

    加锁多点的定义

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

    加锁多点的优势

    1.        扩展性

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

    2.        容错性

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

    3.        负载均衡

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

    加锁多点的架构

    锁的结构

    字段

    名称

    类型

    ServiceLockTag

    锁标签

    Guid

    ModifyOn

    变更时间

    DateTime

    加锁多点的主要步骤

    1.        批量加锁

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

    2.        加锁查询

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

    3.        批量解锁

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

    4.        死锁唤醒

             对加锁超过一定时限的数据进行解锁处理。这样可防止单个服务进程异常造成数据无法处理的状况。

  • 相关阅读:
    个人工作总结2
    个人工作总结1
    《梦断代码》阅读笔记01
    构建之法阅读笔记4
    四则运算-安卓版
    最大联通子数组之和(dfs,记忆化搜索,状态压缩)
    第五周进度报告
    第四周进度报告
    最大子数列之和问题
    构建之法阅读笔记3
  • 原文地址:https://www.cnblogs.com/markhe/p/5587904.html
Copyright © 2011-2022 走看看