加载中
深入浅出一致性Hash原理

一、前言 在解决分布式系统中负载均衡的问题时候可以使用Hash算法让固定的一部分请求落到同一台服务器上,这样每台服务器固定处理一部分请求(并维护这些请求的信息),起到负载均衡的作用。...

08/27 00:21
15
布隆过滤器redis缓存

Bloom Filter布隆过滤器 算法背景 如果想判断一个元素是不是在一个集合里,一般想到的是将集合中所有元素保存起来,然后通过比较确定。链表、树、散列表(又叫哈希 表,Hash table)等等数据...

08/27 00:00
15
算法从小白到大神之荷兰国旗问题&快排&堆排

题目一: 给定一个数组arr,和一个数num,请把小于等于num的数放在数 组的左边,大于num的数放在数组的右边。 要求额外空间复杂度O(1),时间复杂度O(N) 问题二(荷兰国旗问题) 给定一个数组...

08/22 20:27
19
算法从小白到大神之时间复杂度&几种排序算法探究

认识时间复杂度 常数时间的操作:一个操作如果和数据量没有关系,每次都是 固定时间内完成的操作,叫做常数操作。 时间复杂度为一个算法流程中,常数操作数量的指标。常用O (读作big O)来表...

08/21 23:12
25
一篇文章带你领略——JVM运行原理揭秘

JVM运行时数据区 线程共享:所有线程能访问这块内存数据,随虚拟机或GC而创建和销毁 线程独占:每个线程都会有它独立的空间,随线程生命周期而创建和销毁 线程安全问题:共享资源的抢占、线程...

08/18 10:32
31
两个Integer的引用对象传递给一个swap方法的内部进行交换,返回后,两个引用的值是否会发生变化

示例一: /** * 大厂面试题(微博、百度、腾讯): * 两个Integer的引用对象传递给一个swap方法的内部进行交换,返回后,两个引用的值是否会发生变化 */ public class Test001 { public sta...

08/17 14:23
18
深入分布式缓存从原理到实战之无处不在的缓存

缓存分类 一.按照所处位置来分: 客户端缓存 服务端缓存 网络中缓存 二.按照规模和部署方式来分: 单体缓存 缓存集群 分布式缓存 可见,在软件系统中缓存几乎无处不在! 为什么去使用缓存 一:...

史上最通俗易懂的Mybatis源码分析之执行流程总结

一:Mybatis源码分析流程 public static void main(String[] args) { try { // 基本mybatis环境 // 1.定义mybatis_config文件地址 String resources = "mybatis_config.xml"......

Java集合源码分析之LinkedList

前言 前面一篇我们分析了ArrayList的源码,这一篇分享的是LinkedList。我们都知道它的底层是由链表实现的,所以我们要明白什么是链表? 一、LinkedList简介 1.1、LinkedList概述   LinkedL...

Java集合源码分析之ArrayList

前言: 既然是看源码那我们要怎么看一个类的源码呢?这里我推荐的方法是: 1)看继承结构 看这个类的层次结构,处于一个什么位置,可以在自己心里有个大概的了解。 2)看构造方法 在构造方法...

Spring5.0源码深度解析之容器的功能扩展

版权所有:https://my.oschina.net/u/3995125,禁止转载 容器的功能扩展 前期准备: 同样,我们还是以 AnnotationConfigApplicationContext 作为切入点,开始对整体功能进行分析。 Annotati...

SpringMVC源码深度解析之HandlerAdapter适配器模式源码分析

SpringMVC中的HandlerAdapter适配器 什么是适配器模式 定义:将一个系统的接口转换成另外一种形式,从而使原来不能直接调用的接口变得可以调用。 适配器模式应用场景 Mybatis多种日志框架的整...

SpringMVC源码深度解析之DispatcherServlet源码分析

DispatcherServlet源码分析 SpringMVC核心就是DispatcherServlet,所有得请求都会转发到DispatcherServlet,然后再通过DispatcherServlet执行具体得控制层(Handler)返回ModelAndView给客户端...

SpringMVC源码深度解析之拦截器&过滤器&视图层&异步源码分析

SpringMVC核心 SpringMVC注解方式开启视图层 整合Jsp 视图层 @Bean public InternalResourceViewResolver internalResourceViewResolver() { // 1.需要前缀 InternalResourceViewResolver i...

SpringMVC源码深度解析之SpringServletContainerInitializer原理分析

SpringMVC 对SpringMVC或者其它比较成熟的MVC框架而言,解决的问题无外乎以下几点: 将web页面的请求传给服务器 根据不同的请求处理不同的逻辑单元 返回处理结果数据并跳转至响应的页面 Serv...

Spring5.0源码深度解析之SpringBean循环依赖问题解决方案

Spring循环依赖 什么是Spring的循环依赖?循环依赖会存在哪些问题? 示例:AService依赖BService; BService依赖AService @Service public class AService { // @Autowired public BService b...

Spring5.0源码深度解析之SpringBean声明事务底层实现原理

Spring事务 Spring声明式事务让我们从复杂的事务处理中得到解脱,使我们再也不用去处理这些步骤:获得连接、关闭连接、事务提交和回滚操作。再也不需要在事务相关方法中处理大量的try..catc...

Spring5.0源码深度解析之SpringBean的Aop通知调用链源码分析

SpringAOP原理探究 思考:springAOP底层运用了什么设计模式? 生成代理类:代理设计模式、底层五个通知形成调用链采用:责任链设计模式 下面我们回顾下SpringAop实现流程: 1、配置@EnableAs...

Spring5.0源码深度解析之SpringBean的Aop源码分析

SpringAop源码分析:需要关联SpringBean的生命周期 思考: 1.什么时候创建代理类对象 2.SpringAop中如何综合运用CGLIB和JDK动态代理 @EnableAspectJAutoProxy:开启AOP的权限 注入到Spring容...

Spring5.0源码深度解析之SpringBean的Aop的使用

SpringAOP 什么是Aop编程 Aop面向切面编程,在方法之前和之后实现处理 应用场景在于:日志打印、事务实现、安全等。 因为AOP可以解决我们程序上的代码冗余问题 Spring的AOP 前置通知 后置通知...

没有更多内容

加载失败,请刷新页面

返回顶部
顶部