zoukankan      html  css  js  c++  java
  • 关于集群并发问题

    参考:

    http://www.cnblogs.com/PurpleDream/p/5559352.html

    http://blog.csdn.net/zxp_cpinfo/article/details/53692922

    集群并发问题解决的是因集群部署产生的同步问题。

    这里对锁提出几点要求:

    1.可以保证在分布式部署的应用集群中,同一个方法在同一时间只能被一台机器上的一个线程执行。

    2.这把锁要是一把可重入锁(避免死锁)

    3.这把锁最好是一把阻塞锁(根据业务需求考虑要不要这条)

    4.有高可用的获取锁和释放锁功能

    5.获取锁和释放锁的性能要好

    锁机制基本就是这个流程

    提供三种解决方案:

    1.数据库锁

    简单的理解:对需要加锁的方法或资源插入一条唯一的数据到数据库,每次操作前都做这个动作,能够插入成功则表示占用成功,如果失败表示锁被占用。处理完成删除数据释放锁。对数据库存在依赖,需要手动释放锁。

    2.缓存锁

    redis,memcached都可以实现,可集群,可设置失效时间。

    3.zookeeper 这种方式没有研究。有兴趣的可以研究下,上面有参考地址。

  • 相关阅读:
    文件操作实例加强
    文件操作的一般基础操作
    列表与if语句的结合
    难题记录
    字典,集合,列表混合使用需注意:
    列表的一些难度操作
    字符串知识巩固
    and与or的用法
    AngularJS中的过滤器
    NodeJS中的静态资源管理服务
  • 原文地址:https://www.cnblogs.com/yun965861480/p/7299587.html
Copyright © 2011-2022 走看看