自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 spring整合dubbo源码图解

入口@EnableDubboConfig ->和spring的@import有关直接进到DubboConfigConfigurationRegistrar->貌似这个这个方法实在注册bean点进去看看解析propeties配置EnableDubboConfigBinding->DubboConfigBindingRegistrar->注册dubbo db对象registerBeanDefinitions->registerDubboConfigBeans-&

2021-04-09 15:24:19 223 2

原创 springboot启动流程-springboot(3)

第一大块构造方法的处理public SpringApplication(ResourceLoader resourceLoader, Class<?>... primarySources) { //此时为null,可以通过此参数指定类加载器 this.resourceLoader = resourceLoader; Assert.notNull(primarySources, "PrimarySources must not be null"); this.pri.

2020-12-11 15:28:00 242

原创 springboot自动装配核心原理分析-springboot(2)

@SpringBootApplication首要先分析这个入口注解这是@SpringBootApplication下的注解@Target(ElementType.TYPE)//修饰自定义注解,指定该自定义注解的注解位置,类还是方法,或者属性@Retention(RetentionPolicy.RUNTIME)//注解生效时期@Documented//文档实际意义不大@Inherited//有这个注解表示该类被继承注解也会被继承@SpringBootConfiguration@EnableA

2020-11-27 16:56:45 215

原创 springboot内嵌tomcat源码分析DispatchServlet装载过程-springboot(1)

基于serverlect3l将需要扫描的接口放在META_INF里即可@handlestypes可以将Class拿到

2020-11-26 15:37:17 734 1

原创 jdkReentrantLock&&源码分析

创建一个公平或者非公平的锁公平锁static final class NonfairSync extends Sync { private static final long serialVersionUID = 7316153563782823691L; final void lock() { //CAS修改状态 if (compareAndSetState(0, 1)) //修改成功.

2020-10-08 16:02:39 118

原创 AQS底层理解分析

Java中的锁在Java中,多线程的情况下需要锁来保证数据的安全,锁一般分为两类:sychronized 和 Lock。• sychronized利用的是指令级别的monitor-enter 和 monitor-exit。• Lock 使用的则是代码级别实现的。在Doug Lea大神的操刀下利用CAS + 自旋 + volatile变量实现。而在实现之后,并且抽象出了一个实现锁的基础类AbstractQueuedSynchronizer,通过这个类可以快速的实现符合自己要求的锁。AQS的内部实

2020-09-27 15:10:11 241

原创 redis 项目实战配置

# Redis configuration file example.## Note that in order to read the configuration file, Redis must be# started with the file path as first argument:## ./redis-server /path/to/redis.conf# Note on units: when memory size is needed, it is possible to s

2020-09-25 20:40:22 254

原创 hashmap1.7和1.8区别&ConcurrentHashMap底层原理

便利节点修改相同属性hash和 key进行修改进行覆盖hash % 长度为table位置

2020-09-25 20:39:54 405

原创 深入JVM底层类加载&对象布局&逃逸分析

1.JVM底层类加载Java的每个类,在JVM中,都有一个对应的Klass类实例与之对应,存储类的元信息如:常量池、属性信息、方法信息……klass模型类的继承结构普通的Java类在JVM中对应的是instanceKlass类的实例,再来说下它的三个子类InstanceMirrorKlass:用于表示java.lang.Class,Java代码中获取到的Class对象,实际上就是这个C++类的实例,存储在堆区,学名镜像类,反射时用到InstanceRefKlass:用于表示java/lang/

2020-09-25 20:35:52 257

原创 Spring应用和原理

@Autowird默认采用bytype注入没有找到的话会采用根据属性名注入:private Dao indexDao;@Resourse根据byname 可以在注解设置type和name name是@comppent名字

2020-09-25 20:34:27 205

原创 JVM调优+jsvm远程调试技巧

1.最大堆和最小元空间最大最小设置一样大(1)防止内存抖动(2)物理内存的1/32

2020-09-25 20:33:44 520

原创 redis3大问题解决方法+cluster集群搭建

缓存穿透数据库和缓存都没有的数据缓存空对象布隆过滤器通过多个hash函数requirepass lizheng2masterauth lizhengdir /usr/local/redis7000pidfile /var/run/redis_7000.pidlogfile “/usr/local/redis7000/redis7000.log” cluster-enabled yescluster-config-file nodes-7000.confcluster-requi

2020-09-25 20:33:35 295

原创 ArrayList深入底层源码分析

实现了三个标记接口:RandomAccess, Cloneable, java.io.Serializablepublic class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.Serializable1、RandomAccess支持随机访问(基于下标),为了能够更好地判断集合是ArrayList还是Linked

2020-09-22 09:59:51 189

原创 Apollo应用

一、准备工作1.JavaApollo服务端:1.8+Apollo客户端:1.7+由于Quick Start会在本地同时启动服务端和客户端,所以需要在本地安装Java 1.8+。在配置好后,可以通过如下命令检查:java -version样例输出:java version “1.8.0_74”Java™ SE Runtime Environment (build 1.8.0_74-b02)Java HotSpot™ 64-Bit Server VM (build 25.74-b02, mi

2020-08-19 23:28:58 706

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除