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

    加锁多点的定义

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

    加锁多点的优势

    1.        扩展性

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

    2.        容错性

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

    3.        负载均衡

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

    加锁多点的架构

    锁的结构

    字段

    名称

    类型

    ServiceLockTag

    锁标签

    Guid

    ModifyOn

    变更时间

    DateTime

    加锁多点的主要步骤

    1.        批量加锁

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

    2.        加锁查询

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

    3.        批量解锁

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

    4.        死锁唤醒

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

  • 相关阅读:
    Lodash JS实用类库 数组操作 延时执行 功能强大
    7.【nuxt起步】-Nuxt与后端数据交互
    vue图片懒加载
    猎鹰与龙飞船基于 Linux,采用 C++、Chromium 与 JS 开发
    | 和 ||,& 和 && 的区别
    Linux安装.net core
    Linux下程序后台运行:nohup和&
    vuejs如何调试代码
    全局安装 Vue cli3 和 继续使用 Vue-cli2.x
    导入sass文件
  • 原文地址:https://www.cnblogs.com/markhe/p/5587904.html
Copyright © 2011-2022 走看看