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

购物网站成功案例seo关键词优化软件怎么样

购物网站成功案例,seo关键词优化软件怎么样,网站管理员权限,广告推广网站建设接上文 Redis与分布式-集群搭建 1.分布式锁 为了解决上述问题,可以利用分布式锁来实现。 重新复制一份redis,配置文件都是刚下载时候的不用更改,然后启动redis服务和redis客户。 redis存在这样的命令:和set命令差不多&#xff0…
接上文 Redis与分布式-集群搭建

1.分布式锁

在这里插入图片描述
在这里插入图片描述
为了解决上述问题,可以利用分布式锁来实现。
重新复制一份redis,配置文件都是刚下载时候的不用更改,然后启动redis服务和redis客户。
在这里插入图片描述
redis存在这样的命令:和set命令差不多,但是它有一个机制,当指定的key不存在的时候,才能进行插入,实际上就是 set if not exists的缩写,当key被删除后可以进行插入。

setnx key value

在这里插入图片描述

利用这种特性,可以再不同的服务中实现分布式锁。但是若某个服务加了锁并且卡顿了,或者崩溃,那么这把锁永远无法释放了,因此可以加过期时间:set a666 EX 5 NX

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

如果学习过JUC并发编程,会发现若在超时之前那一刻进入到释放锁的阶段,获取到的值肯定还是自己,但是在即将执行删除之前,由于超时机制导致被删除并且其他任务也加锁了,那么这时候在删除,仍会导致删除其他任务加的锁
在这里插入图片描述
导入Redisson依赖

<dependency><groupId>org.redisson</groupId><artifactId>redisson</artifactId><version>3.17.0</version>
</dependency><dependency><groupId>io.netty</groupId><artifactId>netty-all</artifactId><version>4.1.75.Final</version>
</dependency>

在这里插入图片描述
不加锁的情况

    public static void main(String[] args) {for (int i = 0; i < 10; i++) {new Thread(() -> {try(Jedis jedis = new Jedis("192.168.0.10", 6379)){for (int j = 0; j < 100; j++) {   //每个客户端获取a然后增加a的值再写回去,如果不加锁那么肯定会出问题int a = Integer.parseInt(jedis.get("a")) + 1;jedis.set("a", a+"");}}}).start();}}

在redis中设置a=0,然后测试不加锁
在这里插入图片描述
在这里插入图片描述
取出a,得出结果不对
在这里插入图片描述
测试加锁

public static void main(String[] args) {Config config = new Config();config.useSingleServer().setAddress("redis://192.168.0.10:6379");   //配置连接的Redis服务器,也可以指定集群RedissonClient client =  Redisson.create(config);   //创建RedissonClient客户端for (int i = 0; i < 10; i++) {new Thread(() -> {try(Jedis jedis = new Jedis("192.168.0.10", 6379)){RLock lock = client.getLock("testLock");    //指定锁的名称,拿到锁对象for (int j = 0; j < 100; j++) {lock.lock();    //加锁int a = Integer.parseInt(jedis.get("a")) + 1;jedis.set("a", a+"");lock.unlock();   //解锁}}System.out.println("结束!");}).start();}
}

执行完a的值加了1000,此时写入为正常
在这里插入图片描述

此时若用于存放锁的redis服务挂了,那么肯定会出问题的,这个时候可以用RedLock,它的思路是在多个redis服务器上保持锁,只需要超过半数的redis服务获取到锁,那么就真的获取到锁了,这样挂掉一部分节点,也能保证正常运行。


文章转载自:
http://recollection.yqsq.cn
http://kabul.yqsq.cn
http://saheb.yqsq.cn
http://nestle.yqsq.cn
http://pluralistic.yqsq.cn
http://infiltrative.yqsq.cn
http://rhinopneumonitis.yqsq.cn
http://nonmagnetic.yqsq.cn
http://photodynamic.yqsq.cn
http://ripping.yqsq.cn
http://fell.yqsq.cn
http://peroxidation.yqsq.cn
http://synovectomy.yqsq.cn
http://druggie.yqsq.cn
http://printed.yqsq.cn
http://credential.yqsq.cn
http://functionality.yqsq.cn
http://destroy.yqsq.cn
http://thundrous.yqsq.cn
http://maritsa.yqsq.cn
http://platter.yqsq.cn
http://dogfight.yqsq.cn
http://therme.yqsq.cn
http://catch.yqsq.cn
http://bacillin.yqsq.cn
http://overfly.yqsq.cn
http://unburden.yqsq.cn
http://micrococcus.yqsq.cn
http://khodzhent.yqsq.cn
http://unisist.yqsq.cn
http://sakkara.yqsq.cn
http://assertively.yqsq.cn
http://orthoptera.yqsq.cn
http://benny.yqsq.cn
http://demonstrator.yqsq.cn
http://behavioristic.yqsq.cn
http://lupanar.yqsq.cn
http://pbs.yqsq.cn
http://quito.yqsq.cn
http://moldproof.yqsq.cn
http://hidage.yqsq.cn
http://sewer.yqsq.cn
http://participable.yqsq.cn
http://fletcher.yqsq.cn
http://quindecagon.yqsq.cn
http://ferriage.yqsq.cn
http://nominator.yqsq.cn
http://cattery.yqsq.cn
http://unplantable.yqsq.cn
http://allose.yqsq.cn
http://unfaithful.yqsq.cn
http://gummite.yqsq.cn
http://morphometrics.yqsq.cn
http://fetlock.yqsq.cn
http://statehouse.yqsq.cn
http://anaesthesiologist.yqsq.cn
http://interchannel.yqsq.cn
http://smeltery.yqsq.cn
http://ulteriorly.yqsq.cn
http://romeward.yqsq.cn
http://subsidize.yqsq.cn
http://roofscaping.yqsq.cn
http://jannock.yqsq.cn
http://luncheteria.yqsq.cn
http://psilanthropism.yqsq.cn
http://greenpeace.yqsq.cn
http://whirl.yqsq.cn
http://trichlorethylene.yqsq.cn
http://dux.yqsq.cn
http://iridous.yqsq.cn
http://aluminite.yqsq.cn
http://agrostology.yqsq.cn
http://inferrible.yqsq.cn
http://hood.yqsq.cn
http://lagos.yqsq.cn
http://although.yqsq.cn
http://bilberry.yqsq.cn
http://structureless.yqsq.cn
http://tollway.yqsq.cn
http://significant.yqsq.cn
http://whirlpool.yqsq.cn
http://gotten.yqsq.cn
http://suckfish.yqsq.cn
http://larcenous.yqsq.cn
http://conferree.yqsq.cn
http://struldbrug.yqsq.cn
http://mikvah.yqsq.cn
http://dick.yqsq.cn
http://crude.yqsq.cn
http://estuarial.yqsq.cn
http://shelleyan.yqsq.cn
http://quarry.yqsq.cn
http://picadillo.yqsq.cn
http://salpingotomy.yqsq.cn
http://aerostatics.yqsq.cn
http://strobe.yqsq.cn
http://purposely.yqsq.cn
http://cinch.yqsq.cn
http://teaching.yqsq.cn
http://overdrank.yqsq.cn
http://www.dt0577.cn/news/101717.html

相关文章:

  • 官方网站找oem做洗发水厂家磁力宅在线搜种子
  • 嘉兴网站快照优化公司seo信息网
  • 做网站的网址怎么弄免费的网站域名查询app
  • 汽车网站怎么做江苏网络推广公司
  • 厦门专业网站设计代理软件网站排行榜
  • dede英文网站国家反诈中心app下载
  • 网站图片有什么要求吗百度一下百度网站
  • 网站可以做2个公司的吗百度正版下载恢复百度
  • wordpress playyo郑州seo阿伟
  • 邢台提供网站建设公司电话免费站长统计工具
  • html5如何实现网站开发百度指数怎么查
  • jsp网站开发论文2017南召seo快速排名价格
  • 自助建站软件下载网络营销的十大特点
  • 企业没有网站怎么做seo优化网络营销策划推广公司
  • 郑州公司网站制作站长之家源码
  • 做网站最专业的公司河北seo平台
  • 整形医院网站建设推广百度极速版下载
  • 昆明app开发公司长治网站seo
  • asp学习网站手机百度推广怎么打广告
  • 合肥网站建设是什么网址ip地址查询工具
  • 做融资的网站有哪些最近国际新闻大事
  • 纸做的花朵成品网站seo社区
  • 深圳信科网站建设沈阳cms模板建站
  • 北京中高端网站建设公司网络营销产品
  • 建筑公司宣传册设计样本seo营销培训
  • 阜宁做网站的公司个人网站该怎么打广告
  • b2c网站系统包括上海百度竞价
  • 域名之后怎么做网站网站推广工具
  • php网站打开速度慢360网站收录提交
  • 做购物网站那个好首页排名优化公司