• Zookeeper


    什么是Zookeeper :

    一个分布式协调框架,它主要用来解决分布式应用中遇到的一些数据管理问题,如:统一的命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。

    Zookeeper的核心机制 :

    • 文件系统的数据结构

    • 事件监听机制

    配置中心:

    分布式锁:

    增加顺序临时节点来完成加锁:

    zookeeper 配置集群文件:

    启动三台服务器:

    查看服务器的状态:

    curator基于临时节点实现分布式锁:

    • 配置nginx.conf文件: 反向代理

      curator依赖:

       <dependency>
                 <groupId>org.apache.curator</groupId>
                 <artifactId>curator-framework</artifactId>
                 <version>2.12.0</version>
             </dependency>
             <dependency>
                 <groupId>org.apache.curator</groupId>
                 <artifactId>curator-recipes</artifactId>
                 <version>2.12.0</version>
             </dependency>

      curator实现分布式锁:

    @Autowired
    CuratorFramework curatorFramework;

    @PostMapping("/stock/deduct")
    public Object reduceStock(Integer id) throws Exception {
     InterProcessMutex lock = new InterProcessMutex(curatorFramework,"/"+id);
     try{
       lock.acquire();
       orderService.reduceStock(id);
    } catch(Exception e){
       if(e instanceof RuntimeException){
         throw e;
      }
    } finally {
       lock.release();
    }
     return "ok:"+port;
    }

     

  • 相关阅读:
    WAF与IPS的区别总结
    web后门排查与高效分析web日志技巧
    如何做一名好的web安全工程师?
    从“黑掉Github”学Web安全开发
    DNS劫持
    万网上如何将IP和申请的域名绑定
    如何申请网站域名
    什么是域名?什么网站名?什么是URL?
    myeclipse svn 插件去除已经保存的密码方法
    SVN中检出 和 导出 的区别
  • 原文地址:https://www.cnblogs.com/yhc-love-cl/p/13640531.html
Copyright © 2020-2023  润新知