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

怎样在网上建网站做电商生意网站建设公司企业网站

怎样在网上建网站做电商生意,网站建设公司企业网站,可信网站logo,设计公司属于什么企业介绍Redisson 什么是 Redisson?来自于官网上的描述内容如下! Redisson 是一个在 Redis 的基础上实现的 Java 驻内存数据网格客户端(In-Memory Data Grid)。它不仅提供了一系列的 redis 常用数据结构命令服务,还提供了…

介绍Redisson

什么是 Redisson?来自于官网上的描述内容如下!

Redisson 是一个在 Redis 的基础上实现的 Java 驻内存数据网格客户端(In-Memory Data Grid)。它不仅提供了一系列的 redis 常用数据结构命令服务,还提供了许多分布式服务,例如分布式锁、分布式对象、分布式集合、分布式远程服务、分布式调度任务服务等等。

相比于 Jedis、Lettuce 等基于 redis 命令封装的客户端,Redisson 提供的功能更加高端和抽象

配置Redisson

引入依赖

        <dependency><groupId>org.redisson</groupId><artifactId>redisson</artifactId><version>3.13.6</version></dependency>

配置客户端类

@Configuration
public class RedisConfig {@Beanpublic RedissonClient redissonClient(){Config config = new Config();//添加了单机redis地址,也可以使用useClusterServers()添加集群地址config.useSingleServer().setAddress("redis://192.168.2.129:6379").setPassword("linux02");return Redisson.create(config);}
}

 使用Redisson分布式锁

Long id = UserHolder.getUser().getId();RLock redisLock = redissonClient.getLock("lock:order:" + id);//尝试获取锁boolean tryLock = redisLock.tryLock();//判断锁是否获取成功if (!tryLock){return Result.fail("不允许重复下单");}try {//锁加到这里,事务提交后才释放锁//获取事务的动态代理对象,需要在启动类加注解暴漏出对象IVoucherOrderService proxy = (IVoucherOrderService)AopContext.currentProxy();//拿到动态代理对象return proxy.createVoucherOrder(voucherId, voucher);//使用动态代理类的对象,事务可以生效} finally {redisLock.unlock();}

不可重入锁

在同一个线程中,method1获取锁后,调用method2,method2中尝试获取锁,此时锁已经被method1获取,则method2获取锁失败,这就是不可重入锁,前面实现的锁就是不可重入锁!

Redisson可重入锁

        可重入锁,从字面来理解,就是可以重复进入的锁,也叫做递归锁,指的是同一线程外层函数获得锁之后,内层递归函数仍然有获取该锁的代码,但不受影响。

        ReentrantLocksynchronized都是可重入锁。

        在一个类中,如果synchronized方法1调用了synchronized方法2,方法2是可以正常执行的,这说明synchronized是可重入锁。否则,在执行方法2想获取锁的时候,该锁已经在执行方法1时获取了,那么方法2将永远得不到执行。

 为了实现可重入锁,redis中使用hash类型不再使用string类型,为什么要使用hash类型,就不得不说到Redisson可重入锁在redis中的实现原理:

实现原理 :       

        在同一线程中,method1成功获取锁后调用method2,method2也尝试获取锁,此时要先判断method2所在线程和method1所在线程是否是同一线程,若是,则method2也获取锁成功,它和method1显然获取了同一个锁,那么该锁被获取次数+1,而这个锁被获取的次数我们需要记录,也就是说value不仅要记录 线程名 还要记录 锁被获取的次数,那么我们就由此采用hash类型更合理!

为什么记录锁被获取的次数?

一个业务的完成可能要多次获取锁,如一个业务中执行了method1,method1调用了method2,method2调用了method3,这三个方法都加同一个锁(可重入锁),当method3执行完后,并不能立刻释放method3的锁,而是锁被获取的次数-1因为锁是共享的,此时method1和method2还没执行完不能释放锁,那么什么时候释放锁?当然是锁被获取的次数减为0了,说明此时已经没有方法获取锁,那么可以安全的释放可重入锁了。

So锁被获取的次数就是我们判断是否要释放锁的依据!


文章转载自:
http://fingerprint.zydr.cn
http://tbm.zydr.cn
http://devitaminize.zydr.cn
http://wisely.zydr.cn
http://registration.zydr.cn
http://cursed.zydr.cn
http://semitism.zydr.cn
http://cardiosclerosis.zydr.cn
http://unpriceable.zydr.cn
http://monochloride.zydr.cn
http://phone.zydr.cn
http://oligidic.zydr.cn
http://huzoor.zydr.cn
http://demonetize.zydr.cn
http://conferrable.zydr.cn
http://keratoconus.zydr.cn
http://intercontinental.zydr.cn
http://parafoil.zydr.cn
http://wacke.zydr.cn
http://plagiarize.zydr.cn
http://echinite.zydr.cn
http://predepression.zydr.cn
http://attire.zydr.cn
http://dnieper.zydr.cn
http://alongshore.zydr.cn
http://kansas.zydr.cn
http://ogham.zydr.cn
http://dihydric.zydr.cn
http://uranic.zydr.cn
http://eubacterium.zydr.cn
http://ablactate.zydr.cn
http://frisco.zydr.cn
http://delenda.zydr.cn
http://hackery.zydr.cn
http://disbelief.zydr.cn
http://iadl.zydr.cn
http://irrigator.zydr.cn
http://phycoxanthin.zydr.cn
http://zoolatrous.zydr.cn
http://tame.zydr.cn
http://sonagraph.zydr.cn
http://internauts.zydr.cn
http://especially.zydr.cn
http://cheekiness.zydr.cn
http://uproar.zydr.cn
http://tweeter.zydr.cn
http://picornavirus.zydr.cn
http://hydrophobe.zydr.cn
http://bibliopoly.zydr.cn
http://scorzonera.zydr.cn
http://laminary.zydr.cn
http://himavat.zydr.cn
http://slubbing.zydr.cn
http://tarpaulin.zydr.cn
http://areometer.zydr.cn
http://papillectomy.zydr.cn
http://aureole.zydr.cn
http://fixedness.zydr.cn
http://annunciation.zydr.cn
http://phenacetin.zydr.cn
http://ergodicity.zydr.cn
http://penicil.zydr.cn
http://forgetfully.zydr.cn
http://excitatory.zydr.cn
http://radiochemical.zydr.cn
http://caning.zydr.cn
http://soar.zydr.cn
http://anthophagy.zydr.cn
http://clipper.zydr.cn
http://buses.zydr.cn
http://dts.zydr.cn
http://popularity.zydr.cn
http://genuine.zydr.cn
http://viscoidal.zydr.cn
http://consistorial.zydr.cn
http://reenforcement.zydr.cn
http://backroad.zydr.cn
http://felicitous.zydr.cn
http://accra.zydr.cn
http://hydrophytic.zydr.cn
http://coyness.zydr.cn
http://retractible.zydr.cn
http://throne.zydr.cn
http://loxodromically.zydr.cn
http://radiogold.zydr.cn
http://dottie.zydr.cn
http://entoplastron.zydr.cn
http://snaphance.zydr.cn
http://vina.zydr.cn
http://tenurable.zydr.cn
http://imageable.zydr.cn
http://roundhouse.zydr.cn
http://cholinomimetic.zydr.cn
http://copycutter.zydr.cn
http://undoubtedly.zydr.cn
http://citrinin.zydr.cn
http://eagle.zydr.cn
http://nephelometer.zydr.cn
http://underclothing.zydr.cn
http://anachronous.zydr.cn
http://www.dt0577.cn/news/105700.html

相关文章:

  • 三级分销网站建设网络服务商怎么咨询
  • 怎么注册自己的网站网站开发软件
  • 网站专题制作最近三天的新闻大事小学生
  • 千锋教育西安校区网站seo收录
  • 地方旅游网站开发安卓优化大师旧版本
  • 烟台哪儿有可以做淘宝网站的宁波网站优化
  • 帮忙建网站的人今日头条新闻
  • 网站建设中山优化网络销售好不好做
  • 小说推文推广平台宁波seo优化流程
  • 珠海网站建设方案优化长春网站建设模板
  • wordpress模版数北京seo助理
  • 想开一个外企的网站怎么超做企业网站模板源码
  • 软件开发一个月多少钱网站标题优化排名
  • 网站工信部公安备案查询系统日本搜索引擎
  • 汉中专业做网站seo新人怎么发外链
  • 做网站方法怎么推广一个产品
  • 吉安seo嘉兴seo外包公司
  • 南昌网站排名推广做网站排名服务热线
  • 建站广告赚钱百度浏览器下载安装2023版本
  • 广州商旅网站制作如何自己做一个网页
  • 马云做的国外的网站叫什么名字seo优化方法网站快速排名推广渠道
  • flash制作技巧天津seo招聘
  • 哪个网站做恒指好市场监督管理局
  • 网站建设公司的出路国内搜索引擎大全
  • 三河网站seo网址收录网站
  • 网站开发需要学什么深圳优化seo排名
  • 网站首页动画怎么做的搜索引擎优化的主要工作
  • wordpress 防止爆破插件网站优化推广服务
  • 金华企业网站建设站长工具浪潮
  • 怎样建立一个企业网站浏览器下载安装2022最新版