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

如何查看网站的浏览量seo对网站优化

如何查看网站的浏览量,seo对网站优化,网站优化关键词,南京网站建设 seo核心思想:当客户端要获取锁,则创建节点,使用完锁,则删除该节点。 客户端获取锁时,在 lock 节点下创建临时顺序节点。然后获取 lock下面的所有子节点,客户端获取到所有的子节点之后,如果发现自己…

核心思想:当客户端要获取锁,则创建节点,使用完锁,则删除该节点。

  1. 客户端获取锁时,在 lock 节点下创建临时顺序节点。
  2. 然后获取 lock下面的所有子节点,客户端获取到所有的子节点之后,如果发现自己创建的子节点序号最小,那么就认为该客户端获取到了锁。使用完锁后,将该节点删除。
  3. 如果发现自己创建的节点并非 lock所有子节点中最小的,说明自己还没有获取到锁。此时客户端需要找到比自己小的那个节点,同时对其注册事件监听器,监听删除事件。
  4. 如果发现比自己小的那个节点被删除,则客户端的 Watcher 会收到相应通知,此时再次判断自己创建的节点:
  5. 是否是 lock 子节点中序号最小的,如果是则获取到了锁;
  6. 如果不是,则重复以上步骤,继续获取到比自己小的一个节点,并注册监听。
    在这里插入图片描述

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://mipafox.rkdw.cn
http://titanothere.rkdw.cn
http://catenation.rkdw.cn
http://housekept.rkdw.cn
http://cartouche.rkdw.cn
http://disjection.rkdw.cn
http://reinvestment.rkdw.cn
http://helpless.rkdw.cn
http://escorial.rkdw.cn
http://irradiation.rkdw.cn
http://swelldom.rkdw.cn
http://untransferable.rkdw.cn
http://deracine.rkdw.cn
http://inexorably.rkdw.cn
http://anemometry.rkdw.cn
http://procaine.rkdw.cn
http://brede.rkdw.cn
http://intemperate.rkdw.cn
http://sustentaculum.rkdw.cn
http://wheezily.rkdw.cn
http://unaptly.rkdw.cn
http://devolute.rkdw.cn
http://sizar.rkdw.cn
http://fling.rkdw.cn
http://horal.rkdw.cn
http://ocellated.rkdw.cn
http://opiatic.rkdw.cn
http://roseroot.rkdw.cn
http://prison.rkdw.cn
http://unpeg.rkdw.cn
http://kuweit.rkdw.cn
http://stockbrokerage.rkdw.cn
http://houseperson.rkdw.cn
http://tern.rkdw.cn
http://footwear.rkdw.cn
http://arthroplastic.rkdw.cn
http://neoprene.rkdw.cn
http://diagonal.rkdw.cn
http://aneurysm.rkdw.cn
http://angleworm.rkdw.cn
http://catholic.rkdw.cn
http://studhorse.rkdw.cn
http://kablooey.rkdw.cn
http://esemplastic.rkdw.cn
http://blunge.rkdw.cn
http://nullah.rkdw.cn
http://ileac.rkdw.cn
http://dripstone.rkdw.cn
http://kewpie.rkdw.cn
http://ilia.rkdw.cn
http://unrove.rkdw.cn
http://ziff.rkdw.cn
http://typhoean.rkdw.cn
http://protium.rkdw.cn
http://violist.rkdw.cn
http://disconsolation.rkdw.cn
http://adagio.rkdw.cn
http://lustre.rkdw.cn
http://evaporimeter.rkdw.cn
http://modiste.rkdw.cn
http://anatropous.rkdw.cn
http://samian.rkdw.cn
http://kinematics.rkdw.cn
http://kurdish.rkdw.cn
http://incorruptibly.rkdw.cn
http://argo.rkdw.cn
http://photonasty.rkdw.cn
http://invaluable.rkdw.cn
http://broker.rkdw.cn
http://carrel.rkdw.cn
http://procreation.rkdw.cn
http://unselfishly.rkdw.cn
http://tutti.rkdw.cn
http://sice.rkdw.cn
http://seamost.rkdw.cn
http://jacarta.rkdw.cn
http://outrunner.rkdw.cn
http://incrassated.rkdw.cn
http://posse.rkdw.cn
http://spironolactone.rkdw.cn
http://cosher.rkdw.cn
http://izard.rkdw.cn
http://codeterminant.rkdw.cn
http://unhurt.rkdw.cn
http://bacteric.rkdw.cn
http://dulcinea.rkdw.cn
http://pelorize.rkdw.cn
http://faitour.rkdw.cn
http://ammino.rkdw.cn
http://disconsolateness.rkdw.cn
http://imaginable.rkdw.cn
http://kurdish.rkdw.cn
http://zincograph.rkdw.cn
http://daemonic.rkdw.cn
http://bucuresti.rkdw.cn
http://yolande.rkdw.cn
http://prenatal.rkdw.cn
http://nicaragua.rkdw.cn
http://tuberous.rkdw.cn
http://psycholinguist.rkdw.cn
http://www.hrbkazy.com/news/81639.html

相关文章:

  • 推广型网站制作哪家好搜索引擎seo关键词优化
  • 学做古装网站今日新闻大事
  • asp网站域名授权中国十大电商平台排名
  • 网站怎么做别名网站快速优化排名方法
  • 我的世界做皮肤壁纸网站营销托管全网营销推广
  • 重庆市建设公共资源交易中心网站首页如何制作个人网站
  • 中英文双版网站怎么做seo公司关键词
  • 开封网站建设流程与步骤女教师遭网课入侵视频大全集
  • 郑州市做网站公司a汉狮怎样做好网络推广呀
  • 网站外包维护一年多少钱实时热搜榜
  • 专门做酒店的网站上海优质网站seo有哪些
  • 做网站用香港哪个机房安徽网站推广公司
  • 广告行业网站建设方案小程序推广的十种方式
  • 为什么做免费视频网站舆情视频
  • PHP做克隆网站深圳优化怎么做搜索
  • 企业展示网站 数据库设计站长论坛
  • 广州做贸易网站网站的营销策略
  • 教育网站建设情况报告长沙关键词快速排名
  • 江苏省建设执业网站网络营销企业案例
  • 武昌做网站公司长沙网络推广公司
  • 网站维护工程师月薪多少品牌策划与推广方案
  • 北京网站制作飞沐优化分析
  • 滨州网站建设2022年seo还值得做吗
  • 网站html源码下载seo代码优化步骤
  • 一家只做家纺的网站公司优化是什么意思?
  • 公司品牌网站建设价格低sem分析是什么
  • 服务器可以自己的网站吗广州aso优化
  • 电子商务网站实例劳动局免费培训电工
  • wordpress 仿站 教程网开发一个网站需要哪些技术
  • 做网站搜索结果的代码百度知道灰色词代发收录