最新文章列表

Java 实现基于Redis的分布式可重入锁

Java 实现基于Redis的分布式可重入锁 之前在 Java实现基于的Redis的分布式锁 这篇文章中,已经实现了加锁的逻辑,但是有个缺点,就是不可重入,任何重入锁的尝试都会导致死锁的发生,想了一下,这个问题可以解决。     Thinking   如何实现可重入?   首先锁信息(指redis中lockKey关联的value值) 必须得设计的能负载更多信息,之前non-reen ...
莫名的拉风 评论(2) 有9359人浏览 2016-09-30 16:44

redis分布式锁的实现

redis做分布式锁的实现在网上找到的资料要么是实现方式比较复杂(redis版本比较旧的情况下有必要),要么是释放锁的时候有坑,所以自己实现了一个。 支持 redis 2.6.12以上版本。 同时也是redis官网推荐的一种实现方式,可以到http://redis.io/commands/set 看官网说法 package com.extracme.evcard.redis; import ...
51上善若水 评论(0) 有2411人浏览 2016-09-28 13:43

Spring MVC防止重复提交最佳实践

防止表单重复提交是个老生常谈的问题,有些框架层面已经有实现,比如Struts2中的token,但Spring MVC中并未找到相应的功能,只能自己实现。   网上搜 ...
speed 评论(0) 有2252人浏览 2016-09-20 11:28

Java NIO时间服务

Java NIO时间服务   这篇文章内容是另一篇文章《Java 实现基于Redis的分布式锁》的分支.    时间服务包括客户端和服务端, 服务端监听请求 ,若是时间请求,则返回当前服务器的时间, 各个客户端(分布式锁) 都从给服务器获取时间,已达到全局时间一致。   共三个类 TimeServer、 TimeClient和TimeClientException,下面是源码:   ...
莫名的拉风 评论(0) 有2242人浏览 2016-09-10 12:57

Java实现基于Redis的分布式锁

Java实现基于Redis的分布式锁  单JVM内同步好办, 直接用JDK提供的锁就可以了,但是跨进程同步靠这个肯定是不可能的,这种情况下肯定要借助第三方,我这里实现用Redis,当然还有很多其他的实现方式。其实基于Redis实现的原理还算比较简单的,在看代码之前建议大家先去这里看看原理,我就不翻译了,免得变味了,看懂了之后看代码应该就容易理解了。   时间统一问题:各个客户端加锁时需要获 ...
莫名的拉风 评论(7) 有34764人浏览 2016-08-28 14:45

基于Redisson的分布式锁一种简单实现

网上有很多使用jedis实现分布式锁的文章了。redis官方推荐的分布式锁实现是基于redisson的。之前一直使用别人写的基于jedis的封装,今天自己动手写了一个简单的redisson的封装实现,Mark一下。 1、定义回调接口 package com.ijavoracle.common.lock; /** * 分布式锁回调接口 * * @author ijavora ...
layznet 评论(0) 有10810人浏览 2016-06-24 18:49

基于Redis实现简单的分布式锁

  在分布式场景下,有很多种情况都需要实现最终一致性。在设计远程上下文的领域事件的时候,为了保证最终一致性,在通过领域事件进行通讯的方 ...
brandNewUser 评论(0) 有7329人浏览 2016-04-29 08:42

实现分布式锁的几种方式

1. 完全基于数据库 用乐观锁做幂等。缺点是缺少保护,大量请求直接打到数据库;好处是简单不易出错。 2. 使用队列 如果是单机环境,使用普通的先 ...
dsxwjhf 评论(0) 有4703人浏览 2016-04-26 13:18

基于Redis实现分布式锁-Redisson使用及源码分析

在分布式场景下,有很多种情况都需要实现最终一致性。在设计远程上下文的领域事件的时候,为了保证最终一致性,在通过领域事件进行通讯的方式 ...
lijingyao8206 评论(1) 有6394人浏览 2016-04-14 14:12

缓存系列文章--8.热点key问题(mutex key)

   转载请注明出处哈:http://carlosfu.iteye.com/blog/2269678 更多Redis的开发、运维、架构以及新动态,欢迎关注微信公众号:  一、引出热点key问题          我们通常使用 缓存 + 过期时间的策略来帮助我们加速接口的访问速度,减少了后端负载,同时保证功能的更新,一般情况下这种模式已经基本满足要求了。        但是有两 ...
carlosfu 评论(3) 有19715人浏览 2016-01-16 16:26

redis分布式内存锁:余量扣除示例

余量扣除,即在高并发,大用户下,每个用户的余量数据频繁发生变化。例如:12306的某车次票的余量,商品库存,短信余量账本等。 针对,此类频繁发生修改的原子类余量对象,采用mysql,oracle等数据,一定会存在操作瓶颈。本文拟采用内存的办法实现,使用redis+Redisson客户端完成。当然,或许可以采用mangodb这类no-sql数据库。 Redisson客户端 https://g ...
wh0426 评论(1) 有9459人浏览 2015-05-15 20:03

基于mysql和ZooKeeper的分布式锁实现

废话不多说,直接上github:https://github.com/yunjianfei/distributed_lock   直接读代码即可,这里就不详细解释了,一切尽在代码中~
xiaoyu966 评论(0) 有4648人浏览 2015-01-26 16:25

ZooKeeper 分布式锁实现

场景描述 在分布式应用, 往往存在多个进程提供同一服务. 这些进程有可能在相同的机器上, 也有可能分布在不同的机器上. 如果这些进程共享了一些资 ...
乡里伢崽 评论(0) 有1010人浏览 2015-01-14 10:23

ZooKeeper之分布式锁(Python版)

============================================================================ 原创作品,允许转载。转载时请务必以超链接形式标明原始出处、以及本声明。 请注明转自:http://yunjianfei.iteye.com/blog/ =========================================== ...
xiaoyu966 评论(0) 有7968人浏览 2014-12-10 16:26

分布式锁的三种实现方式

一、zookeeper 1、实现原理: 基于zookeeper瞬时有序节点实现的分布式锁,其主要逻辑如下(该图来自于IBM网站)。大致思想即为:每个客户端对某个功能加锁时,在zookeeper上的与该功能对应的指定节点的目录下,生成一个唯一的瞬时有序节点。判断是否获取锁的方式很简单,只需要判断有序节点中序号最小的一个。当释放锁的时候,只需将这个瞬时节点删除即可。同时,其可以避免服务宕机导致的锁 ...
Surlymo 评论(0) 有44310人浏览 2014-06-19 18:04

分布式助手Zookeeper(六)

散仙,在关于zookeeper的前几篇文章中,除了记录了zookeeper的一些基础知识,也介绍了怎么使用zookeeper来完成,配置文件同步,和主从自动切换的功能,那 ...
qindongliang1922 评论(0) 有2655人浏览 2014-03-08 10:48

zookeeper分布式锁的实现

   本文主要讲述在使用ZooKeeper进行分布式锁的实现过程中,如何有效的避免“羊群效应(herdeffect)”的出现。 最后有实现了代码,仅供参考 本文参考了《Hadoop权威指南》以及以下网页内容实现: http://aliapp.blog.51cto.com/8192229/1328018   实现过程介绍如下: 一般的分布式锁实现 这里简单的讲下一般的分布式锁如何实现 ...
graduter 评论(2) 有16151人浏览 2014-02-28 17:00

利用redis分布式锁的功能来实现定时器的分布式

        以前为部门内部开发过一个定时器程序,这个定时器很简单,就是配置quartz,来实现定时调用配置的url功能。最近为了防止定时器所在的服务 ...
ak478288 评论(19) 有20261人浏览 2013-07-03 23:56

电商课题V:分布式锁

@郑昀汇总  关键词: 并发控制 防止并发 英文关键词: Distributed Lock Distributed Lock Manager 电商目的: 保证整个(分布式)系统内对一个重要事物(订单,账户等)的有效操作线程 ,同一时间内有且只有一个。比如交易中心有N台服务器,订单中心有M台服务器,如何保证一个订单的同一笔支付处理,一个账户的同一笔充值操作是原子性的。   ...
zhengyun_ustc 评论(0) 有1060人浏览 2013-06-28 17:05

Memcached笔记——(三)Memcached使用总结

为了将N个前端数据同步,通过Memcached完成数据打通,但带来了一些新问题: 使用iBatis整合了Memcached,iBatis针对每台server生成了唯一标识,导致同一份数 ...
snowolf 评论(4) 有44666人浏览 2012-07-04 17:06

最近博客热门TAG

Java(141744) C(73651) C++(68608) SQL(64570) C#(59609) XML(59133) HTML(59043) JavaScript(54918) .net(54784) Web(54511) 工作(54116) Linux(50906) Oracle(49876) 应用服务器(43288) Spring(40811) 编程(39454) Windows(39381) JSP(37540) MySQL(37268) 数据结构(36423)

博客人气排行榜

    博客电子书下载排行

      >>浏览更多下载

      相关资讯

      相关讨论

      Global site tag (gtag.js) - Google Analytics