会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
Dgvt
博客园
首页
新随笔
联系
订阅
管理
2020年7月13日
Redis缓存穿透、缓存雪崩和缓存击穿详解与解决方案
摘要: 缓存穿透 正常的使用缓存流程是先去缓存查询数据,如果差不多数据,再去数据库查询,并把查询到的数据放进缓存,如果数据库也查不到数据,则不放进缓存。 缓存穿透是指查询一个数据库不存在的数据,永远都不会命中缓存,举个例子:数据库表里只有id为1-1000的数据,而请求查询的id是1001,返回的值一定是n
阅读全文
posted @ 2020-07-13 14:52 Dgvt
阅读(170)
评论(0)
推荐(0)
2020年7月12日
什么是双亲委派模型?违背双亲委派模型?
摘要: 一、先从类加载器讲起 对于任意一个类,被同一个类加载器加载后都是唯一的,但如果被不同加载器加载后,就不是唯一的了。即使是源于同一个Class文件、被同一个JVM加载,只要加载类的加载器不同,那么类就不同。 下面我们写一个不同类加载器加载后的类,看一下对instanceof关键字运算有什么影响: pu
阅读全文
posted @ 2020-07-12 21:01 Dgvt
阅读(588)
评论(0)
推荐(0)
2020年7月11日
关键字volatile的作用
摘要: volatile关键字一般在多线程下使用,主要体现在以下几个方面: 1、保证线程之间的可见性 线程之间的可见性就要从java的内存模型来分析了,每个线程都有自己的栈空间,java的变量都是存储在主内存中的,主内存是共享区域,所有的子线程都是可以访问的,但每个线程之间的栈空间都是不可见,线程对变量的操
阅读全文
posted @ 2020-07-11 10:55 Dgvt
阅读(371)
评论(0)
推荐(0)
2020年5月24日
CAS底层原理
摘要: CAS是什么? CAS全称Compare-And-Swap,它是一条CPU并发原语。它的作用是判断内存的某个位置的值是否为预期值,如果是则改为新值,在这个过程中是原子性的。 sum.misc.Unsafe类中有多个方法被native关键字标记,这说明该方法是原生态的方法,它是一个调用非java语言的
阅读全文
posted @ 2020-05-24 10:33 Dgvt
阅读(390)
评论(0)
推荐(0)
2020年3月28日
Linux上安装MySQL
摘要: 版本: Linux:CentOS7 MySQL:mysql-5.7.29-1.el7.x86_64.rpm-bundle 一、离线安装 1、上传MySQL到Linux上(位置/opt) 2、解压上传的安装包 创建解压文件夹 mkdir /opt/mysql 解压 tar -xvf mysql-5.7
阅读全文
posted @ 2020-03-28 09:11 Dgvt
阅读(187)
评论(0)
推荐(0)
Linux上安装JDK
摘要: 版本: Linux:CentOS7 JDK:jdk1.8 一、离线安装 1、上传jdk1.8到Linux上(目录位置 /opt) 2、解压上传的JDK(此次解压的路径是 /usr/local) tar -zxvf jdk-8u211-linux-x64.tar.gz -C /usr/local 3、
阅读全文
posted @ 2020-03-28 09:10 Dgvt
阅读(142)
评论(0)
推荐(0)
公告