静态、动态代理和AOP详解(此坑未填)

2018-09-29
阅读 26 分钟
2.1k
代理类在程序运行时创建的代理方式被成为 动态代理。也就是说,这种情况下,代理类并不是像静态代理一样,是在Java代码中定义的,而是在运行时根据我们在Java代码中的“指示”动态生成的。

elasticSearch升级记录 ver.1.4.5→ver.5.2.0

2018-08-02
阅读 16 分钟
4.9k
lasticsearch-head是一个很好的可视化前端框架,方便用可视化界面对es进行调用。elasticsearch-head在Github的地址如下:[链接],安装也不复杂,由于它是一个前端的工具,因此需要我们预先安装了node和npm,之后执行下面的步骤:

java锁优化策略

2018-07-12
阅读 4 分钟
2.5k
如果对象是数组类型,则虚拟机用3个Word(字宽,在32位虚拟机中,一字宽等于四字节,即32bit)存储对象头。如果对象是非数组类型,则用2Word存储对象头。一个额外的字宽用于存储数组长度。

《netty实战》阅读笔记(2)——Netty 的数据容器ByteBuf

2018-05-30
阅读 13 分钟
4.3k
实际上,7种基础类型(Boolean除外)都有自己的缓冲区实现,对于NIO编程而言,我们主要使用的是ByteBuffer。从功能角度而言,ByteBuffer完全可以满足NIO编程的需要,但是由于NIO编程的复杂性,ByteBuffer也有其局限性,它的主要缺点如下。

《netty实战》阅读笔记(1)——Netty 的概念及体系结构

2018-05-22
阅读 12 分钟
3.3k
Netty 是一款异步的事件驱动的网络应用程序框架,支持快速地开发可维护的高性能的面向协议的服务器和客户端。我们可以很简单的使用Netty 构建应用程序,你不必是一名网络编程专家;而且Netty 比直接使用底层的Java API 容易得多,它推崇良好的设计实践,可以将你的应用程序逻辑和网络层解耦。

浅谈25种设计模式(4/25)(此坑未填)

2018-04-16
阅读 13 分钟
2.4k
这些设计模式提供了一种在创建对象的同时隐藏创建逻辑的方式,而不是使用新的运算符直接实例化对象。这使得程序在判断针对某个给定实例需要创建哪些对象时更加灵活。

线程池源码分析——ThreadPoolExecutor

2018-03-27
阅读 41 分钟
3k
我们知道,线程池帮我们重复管理线程,避免创建大量的线程增加开销。合理的使用线程池能够带来3个很明显的好处:1.降低资源消耗:通过重用已经创建的线程来降低线程创建和销毁的消耗2.提高响应速度:任务到达时不需要等待线程创建就可以立即执行。3.提高线程的可管理性:线程池可以统一管理、分配、调优和监控。java源生...