自定义博客皮肤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)
  • 收藏
  • 关注

原创 26.备库为什么会延迟好几个小时?

1.问题历史在官方的5.6版本之前, MySQL只支持单线程复制。如果主库有多个线程在更新数据,但是备库就只有一个线程在执行relay log(中转日志)就会导致备库应用日志不够快, 造成主备延迟。如下图:主库的箭头大,代表线程多。备库箭头小,代表线程少2.怎么解决的?把小箭头变大点不就好了把小箭头换成多个小箭头,多个小箭头组成在一起就大了简单的说:原来就一个人干活,现在活多了,有了项目经理,项目经理来分配手下的人来干活coordinator就是原来的sql_thread, 不

2021-11-15 23:05:41 457

原创 拉粑粑的哲学--进程同步与互斥--软件实现方式

1.单标志法算法思想两个进程在访问完临界区后会把使用临界区的权限转交给另一个进程。也就是说每个进程进入临界区的权限只能被另一个进程赋予1.2.但是这个算法存在一个问题先用个有味道的例子来说一下A和B按照规律,每天早晨都比上一次厕所。且B都是等A上完再去上。然后A如果在想上厕所,就等B上完但是有一天,A早上突然不想上厕所了,但是B还是在等待A上厕所。这个时候厕所就是空闲的上图的 int turn=0就是约定每次都是让A先使用厕所turn =1:代表A测试使用完毕,B可以使用了

2021-09-17 23:41:08 193

原创 拉粑粑的哲学---信号量机制--记录型信号量

现在有A,B,C,D来上厕所,但是只有2个坑位 A进入厕所占据了一个坑位,然后厕所门前的电子信息牌就显示当前剩余坑位还有1个B又进来了,占据了一个坑位,然后厕所门前的电子信息牌就显示当前剩余坑位还有0个C也来到了厕所,但是没坑位了,就预约了一下坑位,然后厕所门前的电子信息牌就显示当前剩余坑位还有-1个(代表有1人预约)然后C就可以随意干其他事去了 D也来到了厕所,但是没坑位了,就预约了一下坑位,然后厕所门前的电子信息牌就显示当前剩余坑位还有-2个(代表有2人预约)这时候A使用厕所完毕,然后就给C打.

2021-09-17 23:34:30 144

原创 Java的四种引用-强引用,软引用,弱引用,虚引用

1.强引用强引用是最普遍的一种引用,我们写的代码,99.9999%都是强引用:2.软引用软引用就是把对象用SoftReference包裹一下,当我们需要从软引用对象获得包裹的对象,只要get一下就可以了特点:当内存不足,会触发JVM的GC,如果GC后,内存还是不足,就会把软引用的包裹的对象给干掉也就是只有在内存不足,JVM才会回收该对象。SoftReference<Student> studentSoftReference=new SoftReference<Stud

2021-05-22 15:13:34 275

原创 从字节码分析Java的构造方法和代码块的关系

0.介绍init就是构造方法1.提炼编译器会按从上至下的顺序,收集所有 {} 代码块和成员变量赋值的代码,形成新的构造方法,但原始构造方法内的代码总是在最后package metaspace;public class Demo3_8_2 { private String a = "s1"; { b = 20; } private int b = 10; { a = "s2"; } publi

2021-02-19 19:05:34 84

原创 2021-02-19

0.介绍init就是构造方法1.提炼编译器会按从上至下的顺序,收集所有 {} 代码块和成员变量赋值的代码,形成新的构造方法,但原始构造方法内的代码总是在最后package metaspace;public class Demo3_8_2 { private String a = "s1"; { b = 20; } private int b = 10; { a = "s2"; } publi

2021-02-19 19:03:34 53

原创 打破双亲委派机制的mysql驱动加载

1.提出问题我们在使用 JDBC 时,都需要加载 Driver 驱动,不知道你注意到没有,不写Class.forName("com.mysql.jdbc.Driver")也是可以让 com.mysql.jdbc.Driver 正确加载的,你知道是怎么做的吗?意思是:居然不主动加载这个驱动,那么就会有默认的加载驱动方式2.默认加载驱动方式提炼:在启动类加载DriverManager时候,加载Mysql驱动public class DriverManager { // 注册驱动的集

2021-02-19 19:02:37 336

原创 Mysql的存储过程完整讲解

1.介绍存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它.2.简单来说就是保存一个sql语句代码,下次执行的时候,直接执行这个sql代码也就相当于创建一个函数3.教程https://blog.csdn.net/qq_33157666/article/details/87877246##2.实例delimiter $$create procedu

2021-02-19 19:01:15 629

原创 从字节码角度分析为什么finally中不要添加return

1.问题下面会输出什么package metaspace;public class Demo3_12_2 { public static void main(String[] args) { int result = test(); System.out.println(result);//20 } public static int test() { try { return 10;

2021-02-19 18:59:04 109

原创 SpringSecurity实现前后端分离原理图解

下图就是展示Springsecurity,用来实现前后端分离的流程图只要你坚持仔细看完,我相信,你再去学习用springsecurity进行前后端分析时,会更加容易理解

2021-02-07 16:10:27 705

原创 java.lang.NoSuchMethodError: org.elasticsearch.action.search.SearchRequest.getPreFilterShardSize()

1.原因在pom文件中添加下面的ES版本号springboot自己又默认的ES版本,如果你自己及导入另一个版本,就会报错。必须的自己指定版本号 <properties> <elasticsearch.version>7.6.2</elasticsearch.version></properties>...

2021-01-30 21:47:51 1360

原创 JAVA垃圾回收算法原理

1.标记-清除1.实现过程把要回收的内存,标记一下 然后就直接清除优点: 速度快缺点: 内存碎片化 如果下次想要用一块比较大的内存连续区,可能就没发分配到2.标记整理把需要清除的内存块,标记然后回收回收后,在进行整理,把用到的内存区,都放在一块优点:减少了内存碎片化,让内存使用高效缺点:效率慢。要进行对象的数据复制(转移到另一块内存中)整理后,对象的内存地址变了,还要把变量引用的地址都改变3.复制1.实现准备2块一样大小的内存。一块标记F

2021-01-15 14:06:59 70

原创 汇编语言程序实例----贺利坚老师教的大部分程序源码

1.求2^3assume cs:codecode segment mov ax,2 add ax,ax add ax,ax mov ax,4c00h int 21hcode endsend2.loop 标号每次执行到loop指令的时候,都去看一下cx寄存器中的值是否为0如果为0,就向下继续执行其他的命令,如果不是,就返回到标号的位置assume cs:codecode segment mov ax,2 mov cx,11 s:add ax,ax loop s

2021-01-07 21:39:25 2041 2

原创 谷粒商城--设置ES中的数据类型

PUT /product{ "mappings": { "properties": { "skuId":{ "type": "long" }, "spuId":{ "type": "keyword" }, "skuTitle":{ "type": "text", "analyzer": "ik_smart" }, "skuPrice":{

2020-11-05 20:48:00 699

原创 java超全43种常见BUG总结

1.NoSuchMethodError1、项目依赖复杂。不使用maven管理项目依赖时更容易出现该问题。​ 处理的方法是: 如果使用maven,执行maven dependency:tree 人工排除2、运行环境问题。一般java web程序都运行在容器中,tomcat等。如果容器中已经存在了某个版本的jar包并已经加载了某些类,而web项目中依赖了不同的版本。处理方法:保证使用“干净”的容器运行程序,或者在maven依赖中将容器中已经存在的依赖设置为provi

2020-08-22 00:20:07 3519

原创 @RequestParam使用详情

1.用来干什么?当请求参数的名字个处理方法的形参名字不一样的时候把请求参数名 和 形参名 进行一 一映射2.怎么使用?放在参数的前面@RequestParam(value = “name”)用value指定请求参数,然后映射到他对应的处理方法参数@RequestMapping(value = {"three.do"})public ModelAndView doThree(@RequestParam(value = "name") String rname,

2020-08-21 22:20:59 296

空空如也

空空如也

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

TA关注的人

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