自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 excel 导入

pom依赖如下:<properties> <afterturn-easypoi.version>4.2.0</afterturn-easypoi.version></properties><dependency> <groupId>cn.afterturn</groupId> <artifactId>easypoi-base</artifactId> &l

2021-09-12 22:34:10 124

原创 RabbitMq

RabbitMq 大致流程是 Bindingproducer-》exchange ---------》Queue---》Consumer生产者把消息发送到RabbitMq的broker(相当于一个RabbitMq的服务器)broker中包含若干这个virtualRouter, virtualRouter 相当于数据库中的schema,所有的exchange,queue都在virtual Router中,exchange的...

2021-07-07 23:58:47 106 2

转载 分享一次解决线上java应用导致JVM内存溢出(OOM)的问题

转载:https://blog.csdn.net/u011179993/article/details/79566392

2021-07-04 22:49:15 91

转载 解决SpringBoot jar包太大的问题

spring boot添加spring-boot-maven-plugin插件后, 打出来的Jar动辄几十上百兆. 这种FatJar包在传输时会相当不便, 尤其是某些外企, 服务器可能在美国, 上传速度可能不到200K, 严重影响工作效率.本文就说说怎样减少FatJar的大小.SpringBoot的web应用一般都添加了spring-boot-maven-plugin插件.Maven xml代码<build> <plugins> &l

2021-07-04 22:24:23 3169

转载 RPC和RESTful区别

RPC主要是基于TCP/IP协议的,而HTTP服务主要是基于HTTP协议的,我们都知道HTTP协议是在传输层协议TCP之上的,所以效率来看的话,RPC当然是要更胜一筹啦!下面来具体说一说RPC服务和HTTP服务。OSI网络七层模型在说RPC和HTTP的区别之前,我觉的有必要了解一下OSI的七层网络结构模型(虽然实际应用中基本上都是五层),它可以分为以下几层: (从上到下)第一层:应用层。定义了用于在网络中进行通信和传输数据的接口; 第二层:表示层。定义不同的系统中数据的传输格式,编码和解码规范

2021-07-04 22:20:50 160

原创 redis 集群部署 jedisCluster

redis的集群部署,会把集群划分为16384个槽位(slot),比如集群里面有6个节点,其中三个是master,3个是slave,会把16384个槽位分配给3个master节点中,当用户给redis中增加值得时候,首先会把增加值得key用hase算法求到值,在用16384取余,得到的值(slot)属于哪个master的槽位区间就会把该值存贮在具体的master节点上面特别需要数据的是,集群部署的节点中,只有master节点对外提供服务,slave只是作为备份节点。集群环境中redis的各个节点的通

2021-06-22 23:40:48 226

原创 mysql undo redo 原理

mysql 中的数据操作的流程如下:1.当用户需要更新数据库的时候,首先会把bufferpool中的值缓存在undo的buffer中,2.然后更新完成数据之后,数据其实并不会麻烦写入db的磁盘文件中,而是会写书redo的buffer中,随着下次的commit才会把redo的buffer内容,刷新到redo log的磁盘文件中,并写入到DB的磁盘文件中undo 中存入的数据格式为,当用户更新数据之前会把数据缓存到undo 中,undo中存储的数据接口为, 跟新先的数据的key,value,还有十五

2021-06-22 00:33:38 202

转载 Spring 为何需要三级缓存解决循环依赖,而不是二级缓存

前言在使用spring框架的日常开发中,bean之间的循环依赖太频繁了,spring已经帮我们去解决循环依赖问题,对我们开发者来说是无感知的,下面具体分析一下spring是如何解决bean之间循环依赖,为什么要使用到三级缓存,而不是二级缓存bean生命周期首先大家需要了解一下bean在spring中的生命周期,bean在spring的加载流程,才能够更加清晰知道spring是如何解决循环依赖的我们在spring的BeanFactory工厂列举了很多接口,代表...

2021-06-21 22:14:42 200

原创 mysql 事务隔离级别

mysql 事务需要准从ACID的原则,所谓ACID指的是A(Actomic)原子性,就是用户的操作在一个事务之内,要么全部执行,要不全部不执行

2021-06-15 23:03:28 64 1

原创 mysql 索引数据结构

mysql的存储引擎 主要分为两种 mysim和innodb,mysim是只有表级锁,且没有事务,innodb有行级锁,并且有事务mysql的索引底层存储为B+树,为什么没有用2叉树(因为在某种极端的情况下,2叉树会演变成列表,会降低查询效率),为什么没有用红黑树(因为红黑树的高度不可控),为什么没有用B树。B树的特点(1)排序方式:所有节点关键字是按递增次序排列,并遵循左小右大原则;(2)子节点数:非叶节点的子节点数>1,且<=M ,且M>=2,空树除外(注:M阶代表一个

2021-05-07 00:22:23 123

原创 java内存模型

java 程序在内存中的运行主要涉及一下几个方面, 线程栈,栈帧(一个方法一个) 局部变量表,操作数栈,动态链接。堆 中分新生代和老年代,比例为1:2,新生代中又分为eden和survivor to和survivorfrom,比例分别是8:1:1,新生代的垃圾收集乘坐minor GC,老年代的称之为Full GC,每次GC都会触发STW(stop the word)停止任何操作,等待GC完成之后才能开始处理其他的。...

2021-05-06 00:06:44 82

原创 java 垃圾收集器

java 垃圾收集算法分为 标记-复制,标记-清楚,标记-整理三种算法。java 垃圾收集器共分为 series收集器,parallel收集器,parNew收集器,CMS收集器,G1收集器。其中 series收集器是单线程的收集器,他在做GC的时候,会STW(stop the world)parallel收集器,和series的垃圾收集算法类似,只是parallel可以采用多线程进行垃圾收集,但是同样在做垃圾收集的时候也会STW 。CMS在做GC的时候,在初始标记的时候回STW,不过是很短暂

2021-05-06 00:05:01 68

原创 双亲委派和类加载器

java中的类加载器总共分为4种,分别为启动类加载器(bootstraptClassLoader),扩展类加载器(ExtClassLoader),应用类加载器(AppClassLoder),自定义类加载器(CustomerClassLoader),他们分别继承了ClassLoader类,这四个类的关系为,启动类加载器是继续C++实现的,他是顶级类加载器,扩展类加载器的父加载器为null,应为启动类的加载器是基于C++实现的,所以扩展类找不到对应的关系,应用类加载器的父加载器为扩展类加载器,所有的自定义类

2021-04-28 23:21:55 59

空空如也

空空如也

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

TA关注的人

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