- 博客(5)
- 资源 (3)
- 问答 (1)
- 收藏
- 关注
转载 Java实现流控-Semaphore
网上类似文章很多,不多说,直接上代码:[java] view plain copy/** * 流控类(Semaphore实现) * * @author ln * */ public class FlowControl { /** * 最大访问量 */ private static final int MAX_ACCESS_COUNT = 2
2018-03-28 15:20:17 1075
原创 缓存穿透,缓存失效(缓存雪崩)和缓存并发
缓存穿透: 通常缓存都是根据key去查找value,如果缓存中不存在,则去DB中查找,如果查找到了则将此key->value写入缓存。但是,对于某些一直不存在的数据,每次都无法在缓存中查找到,所以每次都要去DB中查找,DB中也找不到所以没法写入缓存,如此往复,便失去了缓存的意义。解决方法:对到DB中查询为空的情况也进行缓存,但是这个数据的缓存过期时间需要设置得短一点;将所有可能存在的数据根据key
2018-03-28 12:14:51 1784
转载 happens-before俗解
一直对happens-before和指令重排序存在误解甚至是不解,直到看到这篇文章。学习Java并发,到后面总会接触到happens-before偏序关系。初接触玩意儿简直就是不知所云,下面是经过一段时间折腾后个人对此的一点浅薄理解,希望对初接触的人有帮助。如有不正确之处,欢迎指正。synchronized、大部分锁,众所周知的一个功能就是使多个线程互斥/串行的(共享锁允许多个线程同时访问,如读锁
2018-03-27 20:47:32 321
转载 Linux 的硬链接与软链接
Linux 的文件与目录现代操作系统为解决信息能独立于进程之外被长期存储引入了文件,文件作为进程创建信息的逻辑单元可被多个进程并发使用。在 UNIX 系统中,操作系统为磁盘上的文本与图像、鼠标与键盘等输入设备及网络交互等 I/O 操作设计了一组通用 API,使他们被处理时均可统一使用字节流方式。换言之,UNIX 系统中除进程之外的一切皆是文件,而 Linux 保持了这一特性。为了便于文件的管理,L
2018-03-19 16:35:27 573
转载 大话keepalive
大话keepalive我们说到keepalive的时候,需要先明确一点,这个keepalive说的是tcp的还是http的。tcp的keepalive是侧重在保持客户端和服务端的连接,一方会不定期发送心跳包给另一方,当一方端掉的时候,没有断掉的定时发送几次心跳包,如果间隔发送几次,对方都返回的是RST,而不是ACK,那么就释放当前链接。设想一下,如果tcp层没有keepalive的机制,一旦一方断
2018-03-08 14:28:59 317
maven核心程序apache-maven-3.3.9-bin
2017-01-02
mybatis generator能否通过生成成员类的方式实现关联关系
2017-01-04
TA创建的收藏夹 TA关注的收藏夹
TA关注的人