- 博客(7)
- 收藏
- 关注
原创 关于redis cluster 集群模式,你必须知道的几件事情
1. redis cluster 每个节点都开启两个TCP端口,比如配置端口6379,则 开启 6379+10000=16379端口,用于集群间数据交互 2. hashTag 3. 一致性问题。两种会导致丢数的情况,以及如何避免。 (1)主节点同步数据到从节点之前宕机,从节点升级为主节点,导致数据丢失。 解决:wait命令 (2)脑裂 超时拒绝写入 4. nanual failover 5. 转换到cluster模式。 ...
2020-06-07 23:04:50
2026
原创 Java 定时任务线程池解析——ScheduledThreadPoolExecutor
由于比较好奇java的定时任务线程池是怎么实现定时执行的功能的。就研究了下ScheduledThreadPoolExecutor的源码。ScheduledThreadPoolExecutor继承ThreadPoolExecutor,也是使用ThreadPoolExecutor的线程池基本功能的。 如果不了解线程池基本原理的,可以先去了解一下线程池的源码,了解下线程池的工作方式,Worde...
2020-04-09 18:54:38
556
原创 Java HashMap源码分析——扩容
java中HashMap非常常用,HashMap针对效率做了很多方面的优化。无论是从使用角度还是从学习角度,分析一下HashMap的源码对我们都有很大帮助。可以让我们更好的掌握HashMap的使用方式,也能从中借鉴一些编程方法。这里也没有写的面面俱到,可以写的地方太多了,恐怕很少人能有耐心看完。所以我只是写了一些我感觉比较重要,比较有意思的点。由于各个版本的HashMap实现方式有很大的区别,这里...
2020-04-04 19:14:41
312
原创 java ThreadLocal 简介以及内存泄露分析
1. ThreadLocal类主要操作Thread类里面的ThreadLocalMap对象,来实现线程私有变量的读写。 下面是ThreadLocal的get和set public T get() { Thread t = Thread.currentThread(); ThreadLocalMap map = getMap(t); if (ma...
2020-04-01 14:29:43
214
原创 IDEA External libraries 不显示Maven中引入的repository
记录一下遇到的这个问题的解决方法,也是困惑了半天,感觉这是maven的bug,因为动了几次项目中引入的外部jar包,导致IDEA External libraries 不显示Maven中引入的repository,解决方法: 1. 打开IDEA右侧的侧边栏Maven Project -> life cycle -> clean 2. install 3. 最后同样是在Maven ...
2019-03-19 17:35:20
8721
4
原创 java 重写(override) 和 重载(overload) 的实现原理
刚开始学习Java的时候,就了解了Java这个比较有意思的特性:重写 和 重载。开始的有时候从名字上还总是容易弄混。我相信熟悉Java这门语言的同学都应该了解这两个特性,可能只是从语言层面上了解这种写法,但是jvm是如何实现他们的呢 ? 重载官方给出的介绍: 一. overload: The Java programming language supports overloadin...
2018-09-21 18:20:03
1666
原创 Centos 虚拟机网络配置
由于学习需要,用VMware 启动了一个Centos, 对linux配置不是特别熟悉,在网络设置方面遇到了一些问题,xshell连接不上,而且也访问不到外网。记录一下可用的方案和遇到的问题,仅供参考。1. VMware 中将网络设置为: Bridged Adapter(桥接模式) 要用xshell等工具连接,必须设置为桥接模式。2. 修改 /etc/resolv.conf nameserv...
2018-04-08 15:55:23
211
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人