自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 资源 (1)
  • 收藏
  • 关注

原创 Redis 学习进阶版

Redis 学习进阶版雪崩,穿透,击穿Redis来实现分布式锁Redis持久化Redis 失效策略(二者结合)Redis 集群 高可用 雪崩,穿透,击穿 名字 缓存雪崩 缓存穿透 缓存击穿 原因 大面试缓存失效 缓存和数据库都没数据 缓存没数据,数据库有数据 解决办法 每个key失效时间加上随机值 1.参数校验 2.Key对应value=null 1.永久缓存 2.分布式...

2020-04-21 15:44:39 164

原创 记录SpringMVC流程

SpringMVC流程

2020-08-04 16:16:48 104

原创 面试GET和POST区别?没啥区别

标准答案 http是明文协议不安全,https加密 GET PSOT GET浏览器回退无害 POST会再次请求 GET被浏览器主动cache POST不会(可以设置) 参数在url 参数在body 不完全,比POST还差 不安全 参数长度限制2048 不受限制 ASCII 任意(contet-type) 真相 GET和POST是什么? HTTP协议的二种请求方式。 REST。GET获取,POST新增,PUT更新,DELETE删除 HTTP是什么? HTTP是基于TC

2020-07-22 16:18:42 100

原创 Mysql事务特性详解

1.mysql 事务特性 1.持久化原理 补充: 读提交原理是MVCC,是根据版本号 可重复读,的原理是加锁,当事务开启,就对数据加锁,让update操作等待; (1)行级锁 开销大,发生冲突概率小,并发量大 (2)表级锁 开销小,发生冲突概率大,并发量小 串行 -是指所有事务串行运行 ...

2020-06-03 13:48:09 134

原创 看图学习redis实现分布式锁

Redis加锁过程 解决加锁解锁同一线程 重入性:同一线程多次获取同一把锁 redis锁过期时间设置 解决锁失效问题(更外开启1线程来更新时间) Redis 解锁 Redis 分布式 ...

2020-04-30 09:55:21 138

原创 mysql 数据库知识整理

mysql 数据库知识整理知识点面试被问的 知识点 面试被问的 数据库索引b+数,hash B+数是一个平衡大多叉树,搜索效率基本相当 哈希索引 采用一定的哈希算法,把键值换成新的哈希值,检索时不需要类似B+ 1、所有的非叶子节点只存储关键字信息。 2、所有卫星数据(具体数据)都存在叶子结点中。 3、所有的叶子结点中包含了全部元素的信息。 4、所有叶子节点之间都有一个链指针。 数据库语言...

2020-04-08 15:08:40 288

原创 spring-cloud学习

spring-cloud学习spring Boot服务注册与发现Eureka解析Eureka为什么eureka client注册慢eureka 的自我保护负载均衡RestTemplate和ribbon结合Feign远程调度其他服务 spring Boot 特点 自动配置,岂不依赖,Actuator对运行监控 服务注册与发现Eureka 分为eureak Server 服务注册中心 和eureka...

2020-03-24 17:31:09 115

原创 学习java基础

为了应付一次考试,梳理了下java基础知识 1.面对对象 1.概念 所谓对象就是真实世界的实体,对象与实体是一一对应的,也就是说现实世界中每一个实体都是一个对象,它是一种具体概念。 1)类 是对对象的高度抽象描述 2)对象 万事万物皆对象 3)单继承 extends ,程序中的继承性是指:子类拥有父类的全部特征和行为,这是类之间的一种关系。 4)封装 封装的目的在于保护信息,隐藏细节信息,系统之间...

2019-12-09 11:13:08 181

原创 Redis学习小作业

交作业 Redis 修改抢选课 1.曾经的项目是所有的查询和新增都直接读写数据库 2.学习了Redis尝试去改造一下 基本流程 图片: 大体流程就是就是这样,我改造的是学生选课部分。 开始 学生查询课程信息 学生频繁查询课程信息列表 , 对课程信息列表做了缓存 把课程id 作为key,上限人数作业value //当课程信息的缓存不在的时候把信息保存到redis if(!jedis.exists(...

2019-11-13 14:52:20 298

原创 Redis学习日记(第二天)

Redis学习日记(第二天) Redis 链表结构 双向链表 @Autowired RedisTemplate<String,Object> redisTemplate; @Test public void testRedis(){ String key = "zms_list"; // 删除链表 redi...

2019-11-11 16:13:13 111

原创 Redis 学习日记

Redis 学习日记(第一天)Redis用法原因使用的考虑一下下面方面Redis 对字符串操作的常用命令Redis哈希数据结构和常用命令 Redis Redis 是当前互联网流行的 NoSQL(Not Only SQL)数据库。 Redis 具备一定持久层的功能,也可以作为一种缓存工具。对于 NoSQL 数据库而言,作为持久层,它存储的数据是半结构化的,这就意味着计算机在读入内存中有更少的规则,读...

2019-11-08 16:28:55 211

原创 数据库索引和事务

数据库索引和事务索引使用explain工具分析SQL数据库事务四大特性 索引 二叉查询树-左小,又大。有特殊情况变成线性二叉树; B-tree 平衡多路查找树,如果每个节点,有N个孩子,每个节点主要包含关键字和指向孩子的指针。 B+tree 1.非叶子节点的子数指针与关键字个数相同,b+树能存储很多的关键字 2.非叶子节点仅用来做索引,数据都保存在叶子节点中。 3.所有叶子节点具有一个链指针,指...

2019-09-27 15:15:02 140

原创 学习JAVA程序性能优化第3天

常用优化组件和方法 缓冲 缓冲区市一块特定的内存区域。开辟缓冲区的目的是通过缓解应用程序上下层之间的性能差异,提高系统的性能。在日常生活中,缓冲的一个典例就是漏斗。 由于I/O 操作很容易成为性能瓶颈,所以,尽可能在I/O读写中加入缓冲组件,以提高系统的性能。 缓存 缓存也是为提升系统性能而开辟的内存空间。 使用动态代理无需修改一个逻辑方法的代码,便可以为它加上缓存功能,提高其性能。 对象复用-...

2019-08-19 11:36:47 104

原创 学习JAVA程序性能优化第2天

享元模式 享元模式是为数不多的,只为提升系统性能而生的设计模式。它的主要作用就是复用大对象(重量级对象),以节省内存空间和对象时间。 享元工厂是享元模式的核心,它需要确保系统可以共享相同的对象。一般情况下,享元工厂会维护一个对象列表,当任何组件尝试获取享元类时,如果请求的享元类已经被创建,则直接返回已有的享元类,如果没有,则创建一个新的享元对象,并将它加入到维护队列。 private Map...

2019-08-13 13:31:42 66

原创 学习JAVA程序性能优化第1天

性能调优概括 设计调优处于所有调优手段的上层,它往往需要再软件开发之前进行。设计优化是对系统在宏观层面上“质”的优化。 代码调优是从微观上对性能进行调整。 JVM调优,对jVM的运行原理和基本内存结构有一定了解。(堆内存,GC) 数据库调优 设计优化 善用设计模式 单例模式 单例模式的核心在用通过一个接口返回唯一的对象实例。 /** * @description:使用内部类的方式实现单利...

2019-08-10 15:19:41 110

原创 设计模式概念笔记

1.单例模式 确保某一个类只有一个实例,而且自行实例化并向整个系统提供整个实例。 public class Singleton { private static volatile Singleton instance = null ; private Singleton() { } public static Singleton getInstance(){ ...

2019-07-25 14:46:29 110

01java基础-集合知识点详解.xlsx

就是一些通用java集合知识点整理,ArrayList LinkedList,HashMap,HashTable ,ConcurrentHashMap,HashSet,LinkedHashSet类通过线程安全否: 底层: 初始值: 扩容 : 区别(对比优势) 图解

2020-06-01

空空如也

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

TA关注的人

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