加载中
Redisson分布式锁深入解析(二)

上一篇文章主要侧重如何获取锁以及所获取成功的场景,本文将着重对失败以及解锁的情况进行分析,探寻Redisson分布式锁最具艺术的地方。 @Override public boolean tryLock(long waitTime, lo...

08/09 17:52
362
Redission分布式锁源码解析

Redission锁继承Implements Reentrant Lock,所以具备 Reentrant Lock 锁中的一些特性:超时,重试,可中断等。加上Redission中Redis具备分布式的特性,所以非常适合用来做Java中的分布式锁。...

07/30 17:38
1K
设计模式的原则

设计模式的六大原则: 总原则-开闭原则 对扩展开放,对修改封闭。在程序需要进行拓展的时候,不能去修改原有的代码,而是要扩展原有代码,实现一个热插拔的效果。所以一句话概括就是:为了使...

JVM垃圾收集器

简介: Java虚拟机规范中对垃圾收集器应该如何实现并没有任何规定,因此不同的厂商、不同的版本的虚拟机所提供的垃圾收集器都可能会有很大的差别,并且一般都会提供参数供用户根据自己的应用...

Java如何判断对象已死?

Java堆中几乎存放着Java世界中所有的对象实例,垃圾收集器在对堆进行回收前,第一件事情就是要确定这些对象有哪些还是存活着,哪些已经死去。 1:引用计数法:最主要因为该算法无法解决对象之...

02/09 15:15
53
Redis Cluster集群功能的限制

Redis集群相对单机在功能上存在一些限制,需要我们提前了解,在使用时做好规避。限制如下: key批量操作支持有限。如mset、mget,目前只支持具有相同slot值的key执行批量操作。对弈映射为不同...

01/17 10:53
165
Redis Cluster数据分布原理

Redis Cluster是Redis的分布式解决方案,在3.0版本正式推出,有效地解决了Redis分布式方面的需求。当遇到单机内存、并发、流量等瓶颈时,可以采用Cluster架构方案到达负载均衡的目的。之前,...

Redis的内存回收机制

Redis的内存回收机制主要体现在一下两个方面: 删除过期时间的键对象 删除过期键对象 :多行删除用于当客户端读取带有超市属性的键时,如果已经超过键设置的过期时间,会执行删除操作并返回空...

01/16 16:31
737
Redis开发与运维阅读笔记(一)

Redis特性 (一)速度快 1:存取速度快 2:执行速度快 3:Redis使用了单线程架构,预防了多线程产生的竞争问题 (二)基于键值对的数据结构服务器 (三)丰富的功能 1:提供键过期功能 2:提...

01/16 14:30
63
Cookies 和 Session的区别

1.cookie是一种发送到客户端浏览器的文本串句柄,并保存在客户机硬盘上,可以用来在某个web站点绘画期间持久的保持数据 2.session其实指的就是访问者从到达某一个特定主页到离开为止的那段时...

Java Callable Future Example

Java Callable and Future are used a lot in multithreaded programming. In last few posts, we learned a lot about java threads but sometimes we wish that a thread could return som...

Java Thread wait, notify and notifyAll Example

The Object class in java contains three final methods that allows threads to communicate about the lock status of a resource. These methods are wait(), notify() and notifyAll()....

01/10 10:53
8
Java Thread join

public final void join(): This java thread join method puts the current thread on wait until the thread on which it’s called is dead. If the thread is interrupted, it throws I...

01/10 10:13
7
Thread Life Cycle in Java

New When we create a new Thread object using new operator, thread state is New Thread. At this point, thread is not alive and it’s a state internal to Java programming. Runnabl...

01/09 17:53
10
TCP连接的握手

(一)三次握手 建立一条新的TCP连接时,是指是在发送任意数据之前,TCP连接之间交换一些的IP分组,对连接的有关参数进行沟通(如下图),如果连接只用来传送少量数据,这些交换就会严重降低...

01/09 15:23
14
基于Redis的分布式限流系统的设计

https://www.cnblogs.com/AndyAo/p/8144049.html

01/08 16:40
48
HTTP1.0 、 HTTP1.1与HTTP2.0的主要区别

HTTP1.0 VS HTTP1.1 长连接: HTTP1.0需要使用keep-alive参数来告知服务器端要建立一个长连接,而HTTP1.1默认支持长连接(PersistentConnection)和请求的流水线(Pipelining)处理,在一个T...

2017/12/20 17:18
234
Redis分布式锁实现

目前分布式锁基本上都是基于ZK,Consul,Redis等来实现,这里我们使用的最常见的Redis来实现

2017/12/15 14:34
30
Mysql索引失效之隐式转换

SkuId` varchar(32) NOT NULL COMMENT 'SkuId', `SkuId` bigint(32) NOT NULL COMMENT 'SkuId', 根据以上现象我们可以看出当数据库字段为int类型的时候,入参类型无论是字符串还是int,都能够...

2017/12/13 12:37
176
认识非阻塞的同步机制CAS

锁有什么劣势 在多线程并发的场景当中,可以通过加锁来保证线程安全性,但多个线程同时请求锁,很多情况下避免不了要借助操作系统,线程挂起和恢复会存在很大的开销,并存在很长时间的中断。...

2017/12/12 21:10
15

没有更多内容

加载失败,请刷新页面

返回顶部
顶部