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

.net 手机网站开发软文广告投放平台

.net 手机网站开发,软文广告投放平台,深圳设计公司取名,江苏国泰做的网站案例一 curator的说明 1.1 curator的说明 curator是netflix公司开源的一个zk客户端。对Zookeeper提供的原生客户端进行封装,简化了Zookeeper客户端的开发量。Curator解决了很多zookeeper客户端非常底层的细节开发工作,包括连接重连、反复注册wathcer和Node…

一 curator的说明

1.1 curator的说明

curator是netflix公司开源的一个zk客户端Zookeeper提供的原生客户端进行封装,简化了Zookeeper客户端的开发量。Curator解决了很多zookeeper客户端非常底层的细节开发工作,包括连接重连、反复注册wathcer和NodeExistsException异常等。

1.2 curator的特点

1.封装ZooKeeper client与ZooKeeper server之间的连接处理

2.提供了一套Fluent风格的操作API

3.提供ZooKeeper各种应用场景(recipe,比如:分布式锁服务、集群领导选举、共享计数器、缓存机制、分布式队列等)的抽象封装,这些实现都遵循了zk的最佳实践,并考虑了各种极端情况

1.3 curator的具体锁

二  curator的InterProcessMutex可重入锁

2.1 原理

reentrant和JDK的ReentrantLock类似, 意味着同一个客户端在拥有锁的同时,可以多次获取,不会被阻塞。它是由类InterProcessMutex来实现。

2.2 常用API

// 常用构造方法
public InterProcessMutex(CuratorFramework client, String path)
// 获取锁
public void acquire();
// 带超时时间的可重入锁
public boolean acquire(long time, TimeUnit unit);
// 释放锁
public void release();

2.3 代码实现

2.3.1.pom文件sdk引入

  <dependency><groupId>org.apache.curator</groupId><artifactId>curator-framework</artifactId><version>5.3.0</version><exclusions><exclusion><groupId>org.apache.zookeeper</groupId><artifactId>zookeeper</artifactId></exclusion></exclusions></dependency><dependency><groupId>org.apache.curator</groupId><artifactId>curator-recipes</artifactId><version>5.3.0</version><exclusions><exclusion><groupId>org.apache.zookeeper</groupId><artifactId>zookeeper</artifactId></exclusion></exclusions></dependency>

2.3.2 初始化客户端

@Configuration
public class CuratorConfig {@Beanpublic CuratorFramework curatorFramework(){// 重试策略,这里使用的是指数补偿重试策略,重试3次,初始重试间隔1000ms,每次重试之后重试间隔递增。RetryPolicy retry = new ExponentialBackoffRetry(30000, 3);// 初始化Curator客户端:指定链接信息 及 重试策略CuratorFramework client = CuratorFrameworkFactory.newClient("192.168.43.4:2181", retry);client.start(); // 开始链接,如果不调用该方法,很多方法无法工作return client;}
}

2.3.3 分布式锁代码

 @Autowiredprivate CuratorFramework curatorFramework;public   void checkAndLocksByCurator() throws KeeperException, InterruptedException {InterProcessMutex mutex = new InterProcessMutex(curatorFramework, "/curator/lock");try {// 加锁mutex.acquire();// 先查询库存是否充足Stock stock = this.stockMapper.selectById(1L);// 再减库存if (stock != null && stock.getCount() > 0){stock.setCount(stock.getCount() - 1);this.stockMapper.updateById(stock);}this.testSub(mutex);// 释放锁mutex.release();} catch (Exception e) {e.printStackTrace();}}public void testSub(InterProcessMutex mutex) {try {mutex.acquire();System.out.println("测试可重入锁。。。。");mutex.release();} catch (Exception e) {e.printStackTrace();}}

2.3.4 controller引用

2.4 测试验证

1.启动服务

2.启动nginx

3.启动jemter

4.查看结果

1.初始化

2.并发访问后

3.查看服务日志

 

http://www.dinnco.com/news/5765.html

相关文章:

  • 可以做网络兼职的网站泰州百度seo
  • 百度竞价做网站seo网络科技有限公司
  • 北京高端网站建设重庆seo的薪酬水平
  • 彩票网站建设柏如何点击优化神马关键词排名
  • 唐山市网站建设电商平台如何推广运营
  • 小企业做网站多少钱知名网页设计公司
  • 可靠的广州做网站一台电脑赚钱的门路
  • 网站建设工作总结培训云建站模板
  • 淘宝做的网站可靠吗西安百度网站排名优化
  • 培训机构停课seo主要做哪些工作
  • 男男床做第一次视频网站产品推广渠道有哪些方式
  • 网站制seo整站优化服务教程
  • 学校网站开发图片素材市场营销毕业后找什么工作
  • 员工入职 在哪个网站做招工如何优化搜索引擎的准确性
  • 怎么用java 做网站如何进行线上推广
  • 丐网一键生成logo免费360优化大师
  • wordpress 加载流程百度seo课程
  • 宁波外贸网站设计公司软件开发公司有哪些
  • 如东建设网站百度浏览器下载安装
  • 网站建设网页制线上宣传渠道和宣传方式
  • 电子商务网站硬件建设的核心营销型网站建设企业
  • 网站建设费应计入什么科目站牛网是做什么的
  • 重庆市干部公示网如何进行网站性能优化?
  • 什么是网站风格策划的重点ip域名查询
  • 天津塘沽网站建设品牌设计
  • 整木全屋定制十大名牌windows优化大师好用吗
  • 制作关于灯的网站必应搜索引擎国际版
  • 淘宝做网站可靠吗百度经验怎么赚钱
  • 北京企业建立网站视频号怎么推广流量
  • 企业邮箱哪个好用和安全孝感seo