JVM内存模型与垃圾回收
摘要:Java开发有个很基础的问题,虽然我们平时接触的不多,但是了解它却成为Java开发的必备基础——这就是JVM。在C++中我们需要手动申请内存然后释放内存,否则就会出现对象已经不再使用内存却仍被占用的情况。在Java中JVM内置了垃圾回收的机制,帮助开发者承担对象的创建和释放的工作,极大的减轻了开发的
阅读全文
zookeeper分布式服务中选主的应用
摘要:通常zookeeper在分布式服务中作为注册中心,实际上它还可以办到很多事。比如分布式队列、分布式锁 由于公司服务中有很多定时任务,而这些定时任务由于一些历史原因暂时不能改造成框架调用 于是想到用zookeeper特性来实现 首先我们先了解下zk工作原理 结构图解释:左侧树状结构为zookeeper
阅读全文
JAVA服务cpu占用高排查
摘要:最近线上机器偶尔有台cpu达到100%,还居高不下。同样负载的其他机器却正常,我想肯定是代码哪里有问题了 首先我们top看下 可定位到对应占用高的PID 然后=》ps -mp PID -o THREAD,tid,time | sort -rn 就可定位到对应TID。 然后=》printf "%x\n
阅读全文
ThreadPoolExecutor使用
摘要:构造方法参数讲解 private static ThreadPoolExecutor executorService = new ThreadPoolExecutor(8, 8, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue()); 1、构造一
阅读全文