synchronized原理

一、synchronized原理

2018-10-13 21:38:41

阅读数 54

评论数 0

JMM内存模型(未完节)

一、什么是内存模型? 先来了解下计算机操作发展的历史: part1时期 计算机执行指令的时候都是在CPU中,数据都在主存中,物理内存中。 随着技术发展CPU中的执行速度越来越快,然而主存的技术遇到瓶颈,导致CPU的操作都要等待主存操作的响应。     ceo————员工 于是考虑能不能不...

2018-10-13 21:35:16

阅读数 29

评论数 0

等待通知范式

一、等待通知机制  等待线程获取到对象的锁,调用wait()方法,放弃锁,进入等待队列 通知线程获取到对象的锁,调用对象的notify()方法 等待线程接受到通知,从等待队列移到同步队列,进入阻塞状态 通知线程释放锁后,等待线程获取到锁继续执行 二、等待方与通知方遵循的原则 ...

2018-10-13 21:27:42

阅读数 99

评论数 0

Spring data ES攻略

总结下es的使用,方便其他小伙伴使用 一、配置依赖 <dependency> <groupId>org.springframework.data</groupId&am...

2018-09-10 23:10:20

阅读数 2934

评论数 0

ES增删改查内部原理

一、ES查询内部原理 客户端发起请求到集群协调节点coordinate node 若是根据docId(不是根据docId查询则根据随机轮询算法,分配到所有分片查询)查询则根据路由算法,找到分片 根据随机轮询算法,将请求分摊给主备节点,达到负载均衡的目的 各个节点将结果返回给协调节点,由协调...

2018-09-06 22:58:43

阅读数 288

评论数 0

Gossip 算法

Gossip 算法, 灵感来自办公室八卦, 只要一个人八卦一下, 在有限的时间内所有人都会知道该八卦的信息, 这种方式也与病毒传播类似, 因为 Gossip 有众多的别名"闲话算法"、"疫情传播算法"、"病...

2018-09-06 22:13:47

阅读数 439

评论数 0

BeanUtils.copyPropertys源码时序图

2018-09-05 22:15:00

阅读数 76

评论数 0

ES集群单机(单节点/多节点)搭建

一、单机单节点搭建 需要在安装目录/config/elasticsearch.yml中加入配置 使用系统默认配置,在ES安装目录执行elasticsearch脚本   看到控制台输出started表示启动成功 二、单机多节点(伪集群)搭建 在单台服务器上以不同的端口,启动ES服...

2018-08-28 00:06:02

阅读数 2106

评论数 0

ES通配符查询慢优化

  使用ES查询遇到的坑: 当为空字符串查询** 时速度超慢 原始查询条件: 生成的查询语句: 查询语句 http://11.11.11.11:9100/ data_aa-2018.08/category_goods_1_day/_search  POST {   &...

2018-08-27 22:49:41

阅读数 1042

评论数 0

代理模式———静态代理、动态代理(JDK代理)、CGLIB代理

一、代理模式 代理模式就是为某个对象Q,提供一个代理对象,通过代理对象,完成对对象Q的引用。 通过代理对象的增强可以无侵入的扩展委托类。真正的业务实现还是交与委托类,代理类相当于包装了一层委托类,可以在委托类执行的前后加入扩展,比如缓存,切面,消息等。 在SpringAOP的实现中,使用的核...

2018-08-19 19:23:48

阅读数 74

评论数 0

SpringIOC源码分析(七)__IOC容器的依赖注入

一、前情提要 完成了BeanDefinition的注册,就完成了了IOC容器初始化的过程。且这些BeanDefinition也可以被容器使用了,在beanDefinitionMap中承载。容器DefaultListableBeanFactory做用就是对这些信息进行处理维护。这些基础数据也是容器...

2018-08-01 00:04:29

阅读数 125

评论数 0

BeanUtils之Converter转换器

一、BeanUtils.copyPropertys时序图 解析: 获得类对象后循环copyProperty()方法,拷贝每一个属性 在动态类中取得属性的信息DynaProperty 在存放Convert转换器的map中获得Convert转换器,转换属性,返回value;这里的Conve...

2018-07-27 23:53:45

阅读数 211

评论数 0

SpringIOC源码分析(六)__IOC容器的初始化__BeanDefinition载入注册

一、前情提要 上一篇提到了IOC容器初始化的流程,及资源定位,本篇主要分析BeanDefinition的载入过程 二、BeanDefiniton载入解析 BeanDefinition是IOC容器对Bean的数据承载模型,IOC容器对Bean的管理和依赖注入的实现,是通过对BeanDefi...

2018-07-27 23:49:08

阅读数 38

评论数 0

Lucence倒排索引

带着问题探索: 全文检索,为什么要全文检索? 什么是lucence? 什么是倒排索引? 一、全文检索 要了解全文检索首先需要了解:结构化数据与非结构化数据,以及半结构化数据,这三种数据构成了我们生活中所有数据的组成形式。   结构化数据 非机构化数据 半结构化数据 ...

2018-07-19 23:28:03

阅读数 309

评论数 0

SpringIOC源码分析(五)__IOC容器的初始化__资源加载

一、IOC容器初始化过程 IOC容器初始化是由如上篇所讲到的refresh(),方法来启动的,启动包括BeanDefinition的Resource定位,载入和注册这个主要过程。 过程一:resource定位,是由resourceLoader通过getResource(String loc...

2018-07-16 23:38:47

阅读数 52

评论数 0

SpringIOC源码分析(三)__BeanFactory与FactoryBean

二、BeanFactory与FactoryBean       BeanFactory顾名思义是个bean工厂,是个IOC容器,负责管理和生产bean。       FactoryBean是一个Bean,能生产对象的工厂Bean。实现与工厂模式和修饰器模式相似。 Spring 中有两种Bean,一...

2018-07-12 23:50:18

阅读数 99

评论数 0

ES基本查询及HEAD操作

一、基本查询操作选择索引设置type查询条件搜索        操作说明如图:二、must, must not,should的区别must 返回的文档必须满足must子句的条件,类似于 ==   and must not返回的文档必须不满足must not 子句的条件  类似于!=  not sh...

2018-07-11 23:26:52

阅读数 7013

评论数 0

SpringIOC源码分析(二)__BeanFactory

一、BeanFactory           beanFactory是一个接口类提供了最基本的IOC容器的功能,负责管理和生产bean。beanFactory源码:package org.springframework.beans.factory; import org.springfram...

2018-07-11 09:30:55

阅读数 114

评论数 0

SpringIOC源码分析(一) ___IOC容器

一、IOC容器概念            ioc容器是一个javaBean容器,通过工厂模式和反射,实现了对bean和bean依赖关系的管理,将对象的引用或依赖关系的管理,交与容器来实现。通过依赖注入,将bean注入容器而不是传统的在类自身通过new对象来创建。对象之间的依赖关系从传统的由类对象自...

2018-07-05 17:57:24

阅读数 114

评论数 0

责任链模式的应用

一、责任链模式概念         链是一系列节点的集合,链的各节点可以灵活的拆分重组。当一个请求需要多个对象进行处理,将多个对象串成一个链路,从而避免了请求发送者和接收者之间的耦合关系。请求者不知道是链路上的哪个节点做了处理。二、优缺点         优点: 1. 降低了请求发送者和接收者之间...

2018-07-02 13:18:06

阅读数 515

评论数 0

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