Synchronized 在1.5以前是重量级锁,当遇到synchronzed时,其他线程需要等待并进入blocked状态。 在1.6以后,经过大量的测试发现加锁的地方经常被一个线程访问。所以对synchronized进行了锁的粒度优化,...

限流器 我们项目是新闻类的站点,每天需要限制各种爬虫,保证服务在可承受范围内,需要保护后台服务正常。需要使用限流器。 固定 滑动 令牌桶 一 固定窗口: 当前请求是否在最后一次请求时间点+设置的窗口的时间范围内,然后累计请求次数,判断是否...

bean初始化过程: 大体分为三个过程bean的对象创建、属性填充、初始化事件 bean的创建前事件,其中bean的创建前事件主要场景是在aop(AnnotationAwareAspectJAutoProxyCreator主要实现...

当前jvm配置 -XX:+PrintFlagsInitial 查看初始 docker JAVA_OPTS 1-XX:+AlwaysPreTouch 2 JAVA进程启动的时候,虽然我们可以为JVM指定合适的内存大小,但是这些内存操作系统并...

Java 基础技能 包括以下大致内容 Object类的常用方法 常用反射方法 常用字段处理 枚举处理 泛型的获取 基本类型的判断 1. isAssignableFrom()与instanceof isAssignableFrom() 描...

调用时机 clinit在jvm第一次加载class时调用,init在实例创建出来的时候调用 clinit在jvm第一次加载class文件时调用,包括静态变量初始化语句和静态块的执行 init在实例创建出来的时候调用,包括调用new操作符;...

Java的内存优化之Reference,SoftReference、WeakReference、StrongReference 引用对象类型定义 首先,引用对象在Java定义中有三种类型,从弱到强依次为:软引用、弱引用与虚引用,三种级别也各...

概述 Deque是Queue的子接口,我们知道Queue是一种队列形式,而Deque则是双向队列,它支持从两个端点方向检索和插入元素,因此Deque既可以支持LIFO形式也可以支持LIFO形式.Deque接口是一种比Stack...