- 博客(7)
- 收藏
- 关注
原创 分布式锁的背景,基于数据库、redis、zookeeper实现分布式锁的原理与优缺点你都知道吗?
分布式锁的背景,基于数据库、redis、zookeeper实现分布式锁的原理与优缺点你都知道吗? 为什么要分布式锁、分布式锁的实现方式有哪几种、这几种分布式锁实现方式的优缺点有哪些?阅读完本文后你你应该掌握:基于数据库实现分布式锁具体步骤是什么,优缺点是什么;基于Redis实现分布式锁具体步骤是什么,优缺点是什么;基于Zookeeper实现分布式锁具体步骤是什么,优缺点是什么;分...
2019-06-19 21:56:37
570
原创 GIthub上那些能带领我们从Java小白变身架构师的优秀项目(非代码)
Github上的这几个我一直在学习的优秀项目 最近有很多人在后台问我,我是怎么学习的,确实我最近一年学到了很多东西,但是也是完全是前辈们功劳,我在这里对他们表示由衷的感谢。今天我就分享几个我一直收藏并反复学习的几个项目吧。No.1 architecture.of.internet-product推荐指数★★★★★,star数目15k。地址:architecture.of.intern...
2019-06-15 23:02:38
406
原创 缓存路由(一致性Hash)算法Java版实现
负载均衡之缓存路由(一致性Hash)算法Java实现 分布式系统中负载均衡的问题时候可以使用Hash算法让固定的一部分请求落到同一台服务器上,这样每台服务器固定处理一部分请求(并维护这些请求的信息),起到负载均衡的作用。比如说分布式缓存,既然是缓存,就没有必要去做一个所有机器上的数据都完全一样的缓存集群,而是应该设计一套好的缓存路由工具类,所以一致性Hash算法就因此而诞生了。 衡量一个一...
2019-06-10 22:02:20
677
原创 99%的Java程序员都不知道的Spring中的@Transactional注解的坑
在我们开发中很多时候都要用到事务,例如转账、充值等等的操作,这些我就不多BB了,于是很多人就选择最简单的方式@Transactional注解,但是你真的测试过事务异常的时候会回滚吗?等生产环境遇到了在来查找原因那就晚了,下面就说一下该注解的一下坑吧。Transactional常见的几种失效原因没有配置事务管理器。配置方式如下:同一个类中,?一个未标注@Transactional的...
2019-06-09 12:11:38
638
原创 自己动手实现LRU、FIFO缓存淘汰算法, LinkedHashMap的妙用
自己动手实现LRU、FIFO缓存淘汰算法, LinkedHashMap的妙用 **LRU(Least recently used,最近最少使用)**算法根据数据的历史访问记录来进行淘汰数据,其核心思想是“如果数据最近被访问过,那么将来被访问的几率也更高”。 FIFO(First Input First Output,先进先出),即先进先出队列。在超市购物之后会提着我们满满的购物车来到收银...
2019-06-07 22:04:47
1086
2
原创 你真的会写无序数组中位数的查找算法吗?PriorityQueue的妙用
中位数(又称中值,英语:Median),统计学中的专有名词,代表一个样本、种群或概率分布中的一个数值,其可将数值集合划分为相等的上下两部分。对于有限的数集,可以通过把所有观察值高低排序后找出正中间的一个作为中位数。如果观察值有偶数个,通常取最中间的两个数值的平均数作为中位数。 面试时,大家是不是经常被问到,怎么求一个无序数组(长度为n)的中位数? 面试官:知道什么是中位数吗? ...
2019-06-07 22:01:08
980
1
原创 BAT大厂面试涉及的计网面试题都在这里了
计算机网络一直是各位程序员面试最头疼的问题,为了给大家节省更多的时间,提高复习效率,特整理了一份计算机网络相关的面试题,PS:全部整理自网络。OSI七层模型分别对应着五层模型的哪一部分OSI七层协议模型、TCP/IP四层模型和五层协议体系结构之间的关系数据链路层三大法宝数据链路层和运输层的流量控制及差错控制流量控制TCP协议总结–停止等待协议,连续ARQ协议,...
2019-06-07 22:00:48
798
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人