MySQL的MVVC是个什么东东

MVVC是什么MVVC,全称Multi-Version Concurrency Control多版本的并发控制,Multi-Version Concurrency Control,是一个可以提升数据库并发读写性能的技术。一般的,如果对数据的库表的一行记录进行读写操作,为了保证数据的一致性,往往需要对
事务 MySQL 2021年06月16日 653次浏览

JVM参数该如何配置

背景面试官经常会问:JVM参数该如何设置?虽然线上项目的JVM参数在我加入团队后就没有动过了,但我们还是得学习下不是,万一后面需要了呢?JVM内存模型参数从图中可以很清晰的看出JVM运行时内存的分布及每一个部分对应的参数Xmx表示最大堆内存Xms表示最小堆内存MaxNewSize表示最大新生代大小N
Java JVM 2021年06月09日 654次浏览

设计模式之观察者模式-谈谈你对观察者模式的理解

定义先来段wiki上面的定义:观察者模式是软件设计模式的一种。在此种模式中,一个目标对象管理所有相依于它的观察者对象,并且在它本身的状态改变时主动发出通知。这通常透过呼叫各观察者所提供的方法来实现。此种模式通常被用来实时事件处理系统。简单来讲,就是定义了一组一对多的关系。当被观察者的状态改变,会通知
Java 发布订阅 2021年06月09日 554次浏览

当100个任务同时请求提交任务,线程池时如何工作的

问题如果100个任务同时往线程池(最小线程5,最大线程10,队列时LinkedBlockingDeque)提交,线程池会发生什么?线程池如何处理这些任务?线程池我们首先来看看线程池的工作流程。当线程池被创建成功后,其中是没有任何一个线程的。任务队列是作为线程池的一个构造参数传入的,如果初始队列中有任
Java 线程池 2021年06月09日 707次浏览

利用Redisson快速实现分布式锁--Redisson的介绍与使用

什么是RedissonRedisson 是一个使用 Java编写的Redis 客户端。 其以Redis为基础,构建了一种内存数据网格( in-memory data grid),并提供了redis支持的分布式Java对象和服务。包括超过50中Java对象和若干服务(Set, Multimap, So
Java Redisson 分布式锁 2021年06月07日 1,099次浏览

限流的方式-几种限流算法的介绍与对比

简述java限流大体可以分为3个方面。合法性验证码黑名单容器限流tomcatnginx算法限流固定时间窗口算法滑动时间窗口算法漏桶算法令牌桶算法算法限流固定时间窗口这是限流算法中最简单也是最暴力的一种朴素算法。既然我们的目标是让APP在一分钟内只能被调用N次。那么我们便可以统计这一分钟内接口被调用的
限流 Java 2021年06月04日 574次浏览

分布式锁的几种常见实现方式

数据库乐观锁实现方式用表中一行记录来表示锁,其中表示锁的字段采用唯一约束当多个线程同时执行插入语句时,只有一个能插入成功,可以认为获得到了锁,其他则会报错:ERROR 1062 (23000): Duplicate entry ‘1’ for key ‘uiq_idx_resource’),这种情况
分布式锁 Redis Lock MySQL Zookeeper 2021年05月30日 494次浏览

LRU算法

LRU算法简述LRU是Least Recently Used的缩写,即最近最少使用,是一种常用的页面置换算法,选择最近最久未使用的页面予以淘汰。 该算法赋予每个页面一个访问字段,用来记录一个页面自上次被访问以来所经历的时间t,当须淘汰一个页面时,选择现有页面中其t 值最大的,即最近最少使用的页面予以
LRU 2021年05月27日 658次浏览

Spring的启动流程--注解方式启动

Spring的启动流程--注解方式启动1. 创建AnnotationConfigApplicationContext1.1 创建beanFactorythis.beanFactory = new DefaultListableBeanFactory();1.2 创建Readerthis.reader
Java Spring 2021年05月16日 727次浏览

策略模式

策略模式策略模式定义了一组算法,将它们逐个封装起来,并使它们可以相互替换。策略可以让算法独立于使用它们的客户而变化。应用在业务场景中,我们经常需要根据不同的条件而执行不同方法,这个时候便可以为每一种条件定制一类特定的方法。类图如图所示Strategy: 策略接口或者策略抽象类,并且策略执行的接口Co
Java 2021年04月26日 526次浏览