当前位置: 首页 > news >正文

互站网源码网站打开qq邮箱进入wordpress

互站网源码网站,打开qq邮箱进入wordpress,青州网站建设青州,河北网站seo外包核心思想#xff1a;当客户端要获取锁#xff0c;则创建节点#xff0c;使用完锁#xff0c;则删除该节点。 客户端获取锁时#xff0c;在 lock 节点下创建临时顺序节点。然后获取 lock下面的所有子节点#xff0c;客户端获取到所有的子节点之后#xff0c;如果发现自己…核心思想当客户端要获取锁则创建节点使用完锁则删除该节点。 客户端获取锁时在 lock 节点下创建临时顺序节点。然后获取 lock下面的所有子节点客户端获取到所有的子节点之后如果发现自己创建的子节点序号最小那么就认为该客户端获取到了锁。使用完锁后将该节点删除。如果发现自己创建的节点并非 lock所有子节点中最小的说明自己还没有获取到锁。此时客户端需要找到比自己小的那个节点同时对其注册事件监听器监听删除事件。如果发现比自己小的那个节点被删除则客户端的 Watcher 会收到相应通知此时再次判断自己创建的节点是否是 lock 子节点中序号最小的如果是则获取到了锁如果不是则重复以上步骤继续获取到比自己小的一个节点并注册监听。 Curator 实现分布式锁 API 在 Curator 中有五种锁方案 InterProcessSemaphoreMutex分布式排它锁非可重入锁 InterProcessMutex分布式可重入排它锁 InterProcessReadWriteLock分布式读写锁 InterProcessMultiLock将多个锁作为单个实体管理的容器 InterProcessSemaphoreV2共享信号量 package com.itheima.curator;import org.apache.curator.RetryPolicy; import org.apache.curator.framework.CuratorFramework; import org.apache.curator.framework.CuratorFrameworkFactory; import org.apache.curator.framework.recipes.locks.InterProcessMutex; import org.apache.curator.retry.ExponentialBackoffRetry;import java.util.concurrent.TimeUnit;//以线程的方式模拟卖票 public class Ticket12306 implements Runnable{private int tickets 10;//数据库的票数private InterProcessMutex lock ;public Ticket12306(){RetryPolicy retryPolicy new ExponentialBackoffRetry(3000, 10);CuratorFramework client CuratorFrameworkFactory.builder().connectString(192.168.2.212:2181).sessionTimeoutMs(60 * 1000).connectionTimeoutMs(15 * 1000).retryPolicy(retryPolicy).build();//开启连接client.start();lock new InterProcessMutex(client,/lock);}Overridepublic void run() {while(true){//获取锁try {lock.acquire(3, TimeUnit.SECONDS);if(tickets 0){System.out.println(Thread.currentThread():tickets);Thread.sleep(100);tickets--;}} catch (Exception e) {e.printStackTrace();}finally {//释放锁try {lock.release();} catch (Exception e) {e.printStackTrace();}}}} } package com.itheima.curator;public class LockTest {public static void main(String[] args) {Ticket12306 ticket12306 new Ticket12306();//创建客户端Thread t1 new Thread(ticket12306,携程);Thread t2 new Thread(ticket12306,飞猪);t1.start();t2.start();}} 代码很简单可靠性都是zookeeper内部帮你做好的。直接 lock new InterProcessMutex(client,“/lock”);创建锁对象就行
http://www.hkea.cn/news/14359960/

相关文章:

  • 旅游网站建设的意义前程无忧最新招聘网
  • 钻井网站建设wordpress 标题 截断
  • 不上此网站枉做男人怎么自己做app
  • 怎么建设网站zy258建站行业解决方案
  • 网站模板展示本溪市网站建设
  • 做网站几天能学会网站需要优化的小型公司
  • 网站建设公司安丘市WordPress使用CDN无法登录
  • 黄冈网站建设哪家快些网站优化难吗
  • 深圳方维网站建设公司北京网站开发教师招聘
  • 肇庆网站建设解决方案软件开发工程师的要求
  • 太原网站建设51sole贵阳做网站哪家公司好
  • 网站建设规划需要考虑页游在线玩
  • 优化手机访问网站速度网站建设技术支持英文
  • 做pc端网站新闻pinterest wordpress
  • drupal 网站建设哪家公司做网站结算好
  • 网页游戏网站7下做图软件在哪个网站下载器
  • 西安网站建设公司排名wordpress必备的插件
  • 专做机械零配件的网站做网站在国外发图片
  • 开一个素材设计网站怎么做的政务公开和网站建设情况
  • 合肥有哪些做网站的wordpress $show_date
  • 自己建网站花钱吗广州海珠区核酸检测点
  • 母婴会所 网站源码html5做的网站有哪些
  • 替人做赌彩网站被判刑wordpress资讯站
  • 温州微网站策划公司起名
  • 网站后台上传word个人网站如何进行网络推广
  • 快递网站模板网站建设客户需求表 文库
  • 苏州知名网站制作开发咨询类公司注册需要什么
  • 短视频素材下载网站 免费网站数据库设置权限
  • 社交信息共享网站开发外包网站备案要关多久
  • 淮南装饰公司网站建设深圳前十vi设计公司