Pazz

持之以恒。

spring mvc HandlerMapping之:RequestMappingHandlerMapping 源码深入解析 下(处理流程篇)

RequestMappingHandlerMapping 类是 HandlerMapping接口 的实现, 是spring 定义的默认处理流程 spring mvc 请求流程: ---- 其中需要通过HttpRequestServlet 请求对象获取HandlerExecutionChain...

2019-08-14 17:29:21

阅读数 8

评论数 0

spring mvc HandlerMapping之:RequestMappingHandlerMapping 源码深入解析 上(初始化篇)

RequestMappingHandlerMapping 类结构 继承结构: RequestMappingHandlerMapping impl实现 MatchableHandlerMapping接口、EmbeddedValueResolverAware接口 --|Request...

2019-08-14 11:04:12

阅读数 17

评论数 0

HashMap源码浅入

get() 分析 先分析 hash(Object key)方法: 1、(key的哈希值)异或(哈希值 按位右移16)得到哈希值 获取到哈希值,在调用 getNode(int hash, Object key)方法: 2、 // 根据key得到hash值 static final int...

2019-07-11 22:04:35

阅读数 14

评论数 0

spring mvc 工作流程

DispatchServlet # doGet() ==>> 直接调用processRequest()方法 FrameworkServlet # processRequest() ==>> 处理一些Servlet的上下文(安全问题),在通过调...

2019-07-07 14:16:41

阅读数 48

评论数 0

spring aop 之:ProxyFactory 源码解析

AnnotationAwareAspectJAutoProxyCreator 类关系图 通过发现,我们可以知道该类实现BeanPostProcessor接口, 是一个后置处理器.

2019-06-20 23:03:44

阅读数 22

评论数 0

http 状态码

502 Bad Gateway:tomcat没有启动起来 504 Gateway Time-out: nginx报出来的错误,一般是nginx做为反向代理服务器的时候,所连接的应用服务器譬如tomcat无相应导致的 302(临时移动) 服务器目前正从不同位置的网页响应请求,但请求者应继续使用原有位...

2019-06-04 11:27:47

阅读数 21

评论数 0

RocketMQ 最佳实践

最佳实践 1 生产者 1.1 发送消息注意事项 1 Tags的使用 一个应用尽可能用一个Topic,而消息子类型则可以用tags来标识。tags可以由应用自由设置,只有生产者在发送消息设置了tags,消费方在订阅消息时才可以利用tags通过broker做消息过滤:message.setTa...

2019-05-13 23:42:06

阅读数 85

评论数 0

RocketMQ 产品特点

特性(features) 1 订阅与发布 消息的发布是指某个生产者向某个topic发送消息;消息的订阅是指某个消费者关注了某个topic中带有某些tag的消息,进而从该topic消费数据。 2 消息顺序 消息有序指的是一类消息消费时,能按照发送的顺序来消费。例如:一个订单产生了三条消息分别是订单...

2019-05-13 23:40:00

阅读数 60

评论数 0

RocketMQ 观念

基本概念 1 消息模型(Message Model) RocketMQ主要由 Producer、Broker、Consumer 三部分组成,其中Producer 负责生产消息,Consumer 负责消费消息,Broker 负责存储消息。Broker 在实际部署过程中对应一台服务器,每个 Brok...

2019-05-13 23:39:02

阅读数 19

评论数 0

RocketMQ 设计模式

设计(design) 1 消息存储 消息存储是RocketMQ中最为复杂和最为重要的一部分,本节将分别从RocketMQ的消息存储整体架构、PageCache与Mmap内存映射以及RocketMQ中两种不同的刷盘方式三方面来分别展开叙述。 1.1 消息存储整体架构 消息存储架构图中主要有下面三...

2019-05-13 23:37:10

阅读数 162

评论数 0

RocketMQ 架构设计

架构设计 1 技术架构 RocketMQ架构上主要分为四部分,如上图所示: Producer:消息发布的角色,支持分布式集群方式部署。Producer通过MQ的负载均衡模块选择相应的Broker集群队列进行消息投递,投递的过程支持快速失败并且低延迟。 Consumer:消息消费的角色,...

2019-05-13 23:32:41

阅读数 53

评论数 0

rocketmq 源码 (解析)

rocketmq 官网:http://rocketmq.apache.org/docs/quick-start/

2019-04-26 16:56:20

阅读数 53

评论数 0

mysql 常用函数用法示例

1、字符串函数 select concat(‘pa’, ‘-’, ‘zz’); – 把参数连成一个长字符串并返回 结果: pa-zz select length(‘text’); – 返回字符串str的长度 4 select locate(‘c’, ‘abcdef’); – 返回字符串subs...

2019-04-22 00:31:57

阅读数 57

评论数 1

LRU和LFU缓存算法

最近最少使用(LRU) 首先丢弃最近最少使用的项目。该算法需要跟踪何时使用的内容,如果想要确保算法总是丢弃最近最少使用的项目,则这是昂贵的。该技术的一般实现需要保持高速缓存行的“年龄位”并基于年龄位跟踪“最近最少使用”高速缓存行。在这样的实现中,每次使用高速缓存行时,所有其他高速缓存行的年龄都会改...

2019-04-18 09:28:31

阅读数 43

评论数 0

MyBatis 核心逻辑处理篇

mybatis 核心逻辑处理篇: SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(configuration); 底层就是: new DefaultSqlSessionFactory(con...

2019-04-16 00:18:50

阅读数 56

评论数 0

MyBatis 源码之解析篇

mybatis 初始化流程 步骤: 1、通过 ClassLoader 类加载器读取某个路径的 xml 文件来获取 InputStream 流对象. 2、通过 SqlSessionFactoryBuilder 对象来解析流, 返回工厂 3、通过 SqlSessionFactory 工厂获取 SqlS...

2019-04-14 12:25:41

阅读数 47

评论数 1

Java HashMap数据属性

public class HashMap<K, V> extends AbstractMap<K, V> implements Map<K, V>, Cloneabl...

2019-03-05 17:47:53

阅读数 37

评论数 0

Java Deque 、Queue 队列

Deque 双向队列接口 public interface Deque<E> extends Queue<E>{ void addFirst(E e); //添加元素到列表头部 vo...

2019-03-05 17:45:08

阅读数 24

评论数 0

Java LinkedList解析

LinkedList 成员 public class LinkedList<E> extends AbstractSequentialList<E> implements List<E&...

2019-03-05 17:29:41

阅读数 21

评论数 0

Java List 接口

List<E> extends Collection<E> extends Iterable<E> Iterable 接口方法: boolean hasNext...

2019-03-05 17:22:17

阅读数 20

评论数 0

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