自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(130)
  • 资源 (3)
  • 收藏
  • 关注

原创 frp相关设置

ubuntu防火墙端口开启关闭https://www.cnblogs.com/cnxjk/p/15731201.htmlWin10 免密码 空密码实现远程桌面连接https://blog.csdn.net/HaHa_Sir/article/details/106377805

2022-04-19 20:10:29 261

转载 详解 JVM 逃逸分析

转载于:详解 JVM 逃逸分析详解 JVM 逃逸分析什么是逃逸分析逃逸状态逃逸分析的优势同步消除(锁消除)标量替换栈内存分配逃逸分析测试Step 1:测试开启逃逸Step 2:测试关闭逃逸Step 3:测试标量替换Step 4:测试锁消除总结Java 中对象的创建一般会由堆内存去分配内存空间来进行存储,在堆内存空间不足的时候,GC 便会对堆内存进行垃圾回收,如果 GC 运行的次数过多,便会影响程序的性能,所以 “逃逸分析” 由此诞生,它的目的就是判断哪些对象是可以存储在栈内存中而不用存储在堆内存中的,从

2021-06-23 14:01:37 799

转载 八个经典的java多线程编程题目

1、要求线程a执行完才开始线程b, 线程b执行完才开始线程package com.example.javatest.theardTest.MultiThreadAlgorithm;/** * 要求线程a执行完才开始线程b, 线程b执行完才开始线程 * * join()解释:https://blog.csdn.net/qq_18505715/article/details/79795728 * * wait() 和 notify() 解释:https://blog.csdn.net/ch

2021-06-22 14:14:27 3696

原创 SpringBoot在Redis中使用BloomFilter布隆过滤器机制

1 、SpringBoot在Redis中使用BloomFilter布隆过滤器机制2、springboot-redis-redisson-bloomfilter布隆过滤器3、 redis整合google guava的布隆过滤器4、 SpringBoot+Redis布隆过滤器防恶意流量击穿缓存的正确姿势

2021-06-21 21:56:08 702

原创 MySQL分库分表

一一口气说出 9种 分布式ID生成方式,面试官有点懵了 – 0一文快速入门分库分表(必修课) – 1一文快速入门分库分表中间件 Sharding-JDBC (必修课) – 2sharding-jdbc 分库分表的 4种分片策略,还蛮简单的 – 3二SpringBoot使用Sharding-JDBC分库分表 – 1【Spring Boot 实战】数据库千万级分库分表和读写分离实战 – 2springboot实战之mysql分库分表 – 3

2021-05-24 20:21:58 101

原创 POI读写大数据量excel,解决超过几万行而导致内存溢出的问题

我所知道报表之POI百万数据导入测试、分析、原理、解决、总结POI读写大数据量excel,解决超过几万行而导致内存溢出的问题JavaWEB–POI之EXCEL操作、优化、封装详解系列(一)–概述与原理Springboot上传excel并将表格数据导入或更新mySql数据库...

2021-05-16 14:50:56 508

转载 Java线程池工具类

转载:https://blog.csdn.net/weixin_38399962/article/details/81979295工具类/** * Description:符合阿里巴巴规范的线程池 * User: zhouzhou * Date: 2019-01-15 * Time: 14:19 */public class ThreadPoolUtil { public static ThreadPoolExecutor threadPool; /** * 无

2021-03-19 08:45:29 338

转载 SQL中的ON和WHERE的区别

转载:https://blog.csdn.net/liitdar/article/details/80817957 本文主要介绍SQL语句中ON和WHERE的区别。 1 概述 当我们使用连接操作,关联两张或多张表来返回记录时,数据库都会生成一张临时表,最后将这张临时表返回给用户。 以 LEFT JOIN 为例:在使用 LEFT JOIN 时,ON 和 WHERE 过滤条件的区别如下: ON

2021-03-18 10:57:39 513

转载 MySQL -update语句流程总结

转载:MySQL -update语句流程总结其他文章:MySQL Update语句是怎么执行的?废话不多说先来张图解释:update T set value = value+1 where ID =2我想可能大部分人看完这图,思考片刻,接下来的就不需要在继续看了,但是考虑到部分朋友还是新手(包括自己)以及后面复习,还是稍微唠叨一段。update过程首先,上图中深色背景的表示在执行器中执行,也就是Server层,浅色的是在InnoDB引擎中执行。由于很多朋友并不是专业的DBA或者对MyS

2021-03-16 12:16:21 356

转载 JVM:全面解析Java对象的创建、内存布局 & 访问定位流程

https://blog.csdn.net/carson_ho/article/details/102364791

2021-03-15 23:22:16 76

转载 JDK8的JVM内存结构,元空间替代永久代成为方法区及常量池的变化

转载于:JDK8的JVM内存结构,元空间替代永久代成为方法区及常量池的变化JVM的知识这里总结的很详细:https://github.com/doocs/jvm/blob/master/README.md,因此在本博客也不会再对其中的东西重复总结了。现在很多文章关于JVM内存结构的说法模糊不清,这里记录一下以前的一些比较模糊的JVM相关概念的重新认识。都是经过多处考证对比的。MetaSpace代替Perm Gen元空间代替了永久代,所以JVM关于永久代的参数也都作废了,取而代之的是关于MetaSpa

2021-03-11 20:00:06 160

原创 Spring Cloud 三 之Consul

Spring Cloud 三 之Consul1 Consul简介1.1 Consul是什么consul官网Consul是一套开源的分布式服务发现和配置管理系统,由HashiCorp 公司用Go语言开发。提供了微服务系统中的服务治理、配置中心、控制总线等功能。这些功能中的每一个都可以根据需要单独使用,也可以一起使用以构建全方位的服务网格,总之Consul提供了一种完整的服务网格解决方案。它具有很多优点。包括:基于raft协议,比较简洁;支持健康检查,同时支持HTTP和DNS协议支持跨数据中心的WA

2021-03-06 22:38:04 178 1

原创 Redis数据类型

Redis数据类型1 前言1.1 简单动态字符串1.1.1 SDS的定义1.1.2 杜绝缓冲区溢出1.2 链表1.3 字典1.4 跳跃表(跳表)1.5 整数集合1.6 压缩列表2 String3 List4 Hash5 Set5 ZSet1 前言Redis用到的主要数据结构,有简单动态字符串( SDS)、双端链表、字典、压缩列表、整数集合等等。Redis并没有直接使用这些数据结构来实现键值对数据库,而是基于这些数据结构创建了一个对象系统,这个系统包含字符串对象、列表对象、哈希对象、集合对象和有序集合对

2021-01-31 22:12:42 112

原创 Java并发 ReentrantLock和AQS

文章目录AQS是什么AQS在其他同步器组件中的应用AQS是什么是用来构建锁或者其它同步器组件的重量级基础框架及整个JUC体系的基石,通过内置的FIFO队列来完成资源获取线程的排队工作,并通过一个int类型变量表示持有锁的状态。抢到资源的线程直接使用处理业务逻辑,抢不到资源的必然涉及一种排队等候机制。抢占资源失败的线程继续去等待(类似银行业务办理窗口都满了,暂时没有受理窗口的顾客只能去候客区排队等候),但等候线程仍然保留获取锁的可能且获取锁流程仍在继续(候客区的顾客也在等着叫号,轮到了再去受理窗口办理业务

2021-01-31 21:32:45 137

原创 JVM学习总结

文章目录JVM内存管理JVM运行时内存区域JVM 性能监控、故障处理工具JVM OutOfMemoryError异常JVM堆内存对象的创建垃圾收集器与垃圾回收算法垃圾收集算法垃圾收集器如何判断对象是否可回收JVM类加载JVM类加载过程/时机JVM类加载器JVM内存管理JVM运行时内存区域作用 =》是否私有 =》 存储内容是什么 =》 是否出现OOM异常程序计数器Java虚拟机栈本地方法栈Java堆方法区运行时常量池直接内存JVM 性能监控、故障处理工具jpsjstatj

2021-01-30 21:21:37 306 1

原创 Java(并发)多线程编程面试

文章目录基础知识什么是进程?什么是线程?什么是协程?三者之间的联系与区别?什么是僵尸进程?什么是孤儿进程?什么是守护线程?守护线程和用户线程有什么区别呢?如何在 Windows 和 Linux 上查找哪个线程cpu利用率最高?说一说并发和并行的区别?为什么要进行多线程(并发)编程?多线程编程有什么缺点?说一说线程的生命周期以及对应的状态?Java多线程中分别调用什么方法能够转换为下一个状态?什么是线程死锁?如何避免死锁?写个Java死锁代码?什么是线程上下文切换?Java线

2021-01-29 09:05:35 87

原创 多线程中的锁

文章目录乐观锁和悲观锁公平锁和非公平锁独占锁和共享锁什么是可重入锁锁升级过程?Java对象头偏向锁轻量级锁重量级锁总结锁的升级流程什么是CASLockSupportCondition乐观锁和悲观锁乐观锁和悲观锁是在数据库中引入的名词,但是在并发包锁里面也引入了类似的思想。悲观锁指对数据被外界修改持保守态度,认为数据很容易就会被其他线程修改,所以在数据被处理前先对数据进行加锁,并在整个数据处理过程中,使数据处于锁定状态。悲观锁的实现往往依靠数据库提供的锁机制,即在数据库中,在对数据记录操作前给记录加排它

2021-01-29 09:03:14 401

原创 Java并发 原子操作类

文章目录原子更新基本类型类原子更新数组Java Atomic包中有13个原子操作类,共分为4类,分别是原子更新基本类型、原子更新数组、原子更新引用和原子更新属性(字段)。Atomic包里的类基本都是使用Unsafe实现的包装类。原子更新基本类型类使用原子的方式更新基本类型,Atomic包提供了以下3个类:AtomicBoolean:原子更新布尔类型。AtomicInteger:原子更新整型。AtomicLong:原子更新长整型。以上3个类提供的方法几乎一模一样,所以仅以AtomicInte

2021-01-29 08:57:14 107

原创 Java内存模型相关

说一说JMM(Java内存模型)?JMM是Java内存模型,也就是Java Memory Model,简称JMM,本身是一种抽象的概念,实际上并不存在,它描述的是一组规则或规范,通过这组规范定义了程序中各个变量(包括实例字段,静态字段和构成数组对象的元素)的访问方式。JMM关于同步的规定:线程解锁前,必须把共享变量的值刷新回主内存线程解锁前,必须读取主内存的最新值,到自己的工作内存加锁和解锁是同一把锁由于JVM运行程序的实体是线程,而每个线程创建时JVM都会为其创建一个工作内存(有些地方成为

2021-01-26 21:58:09 80

原创 Java多线程 ThreadLocal

文章目录ThreadLocalThreadLocal的作用(有什么用)?ThreadLocal的原理InheritableThreadLocalThreadLocal内存泄漏问题ThreadLocalRandom类ThreadLocalThreadLocal是JDK包提供的,它提供了线程本地变量,也就是如果你创建了一个ThreadLocal变量,那么访问这个变量的每个线程都会有这个变量的一个本地副本。当多个线程操作这个变量时,实际操作的是自己本地内存里面的变量,从而避免了线程安全问题。创建一个Threa

2021-01-25 19:27:55 147

原创 Java线程基础

文章目录Java中创建线程有哪几种方式?说一下 runnable 和 callable 有什么区别?线程的 run()和 start()有什么区别?启动线程调用run()不行吗?Callable 、 Future和FutureTask说一说?Java 中用到的线程调度算法是什么?线程的调度策略?什么是线程调度器(Thread Scheduler)和时间分片(Time Slicing )?join()、sleep() 、wait()和 yield() 有什么区别?为什么线程通信的方法 wait(), noti

2021-01-23 22:16:25 84

原创 MySQL面试其他问题

文章目录⼀条SQL语句在MySQL中如何执⾏的?什么是存储过程?有哪些优缺点?MySQL数据库cpu飙升到500%的话怎么处理?解释⼀下什么是池化设计思想。什么是数据库连接池?为什么需要数据库连接池?MySQL自增主键用完了怎么办?⼀条SQL语句执⾏得很慢的原因有哪些?MySQL创建表时可以设置多个主键吗?MySQL创建表时不指定主键可以吗?SQL的生命周期?Java连接MySQL的步骤?⼀条SQL语句在MySQL中如何执⾏的?一条sql语句是如何执行的什么是存储过程?有哪些优缺点?存储过程是一个预

2021-01-22 17:35:07 239

原创 MySQL 数据库优化

文章目录知道如何分表吗,说一说垂直分表和水平分表?分库分表之后,id 主键如何处理?说一说MySQL的复制原理和流程?说一说MySQL的读写分离?读写分离有哪些方案?MySQL有哪些备份方法,原理是什么?大表怎么优化?某个表有近千万数据,CRUD比较慢,如何优化?分库分表了是怎么做的?分表分库了有什么问题?有用到中间件么?他们的原理知道么?知道如何分表吗,说一说垂直分表和水平分表?彻底搞清分库分表(垂直分库,垂直分表,水平分库,水平分表)MySQL 分库分表方案,总结的非常好!分库分表之后,id 主

2021-01-22 16:37:15 224

原创 MySQL SQL语句优化

文章目录如何定位及优化SQL语句的性能问题?创建的索引有没有被使用到?或者说怎么才可以知道这条语句运行很慢的原因?慢查询日志?主键使用自增ID还是UUID?如何优化关联查询和子查询?如何优化where语句?大表数据查询,如何优化语句?如何定位及优化SQL语句的性能问题?创建的索引有没有被使用到?或者说怎么才可以知道这条语句运行很慢的原因?使用Explain关键字,mysql的explain 命令可以用来分析select 语句的运行效果。基本语法:explain select ...id:执行

2021-01-22 14:21:51 292

原创 Ubuntu之MySQL的安装、配置与卸载

服务器端安装安装服务器端:在终端中输入如下命令,回车后,然后按照提示输入sudo apt-get install mysql-server启动服务sudo service mysql start查看进程中是否存在mysql服务ps ajx|grep mysql停止服务sudo service mysql stop重启服务sudo service my...

2021-01-21 19:21:17 69

原创 MySQL 六 触发器、表与视图

文章目录触发器什么是触发器?MySQL中都有哪些触发器?表与视图说一说表与视图的区别?什么场景下使用视图?如何创建视图?为什么要使用视图?说一说视图的优缺点?什么是游标?触发器什么是触发器?MySQL中都有哪些触发器?触发器是与表有关的数据库对象,在满足定义条件时触发,并执行触发器中定义的语句集合。MySQL 数据库中有六种触发器:Before InsertAfter InsertBefore UpdateAfter UpdateBefore DeleteAfter Delete表

2021-01-21 19:14:52 531

原创 MySQL 四 事务

文章目录什么是事务?事务是如何实现的?MySQL的四大事务特性(ACID)介绍一下?什么是脏读?幻读?脏读和幻读的区别?如何解决脏读和幻读?说一说事务的隔离级别?MySQL的默认的隔离级别?SQL 标准定义了四个隔离级别:什么是事务?事务是如何实现的?『浅入深出』MySQL 中事务的实现MySQL的四大事务特性(ACID)介绍一下?原子性: 事务是最小的执行单位,不允许分割。事务的原子性确保动作要么全部完成,要么完全不起作用;一致性: 执行事务前后,数据保持一致,例如转账业务中,无论事务是否成功

2021-01-21 17:31:05 340

原创 MySQL 五 锁

文章目录按照锁的粒度分数据库锁有哪些?锁机制与InnoDB锁算法?从锁的类别上分MySQL都有哪些锁呢?像上面那样子进行锁定岂不是有点阻碍并发效率了MySQL中InnoDB引擎的行锁是怎么实现的?说一说MVCC(多版本并发控制)?原理是什么?什么是死锁?怎么解决?如何预防?数据库的乐观锁和悲观锁是什么?怎么实现的?按照锁的粒度分数据库锁有哪些?锁机制与InnoDB锁算法?在关系型数据库中,可以按照锁的粒度把数据库锁分为行级锁(INNODB引擎)、表级锁(MYISAM引擎)和页级锁(BDB引擎 )。My

2021-01-21 16:45:16 756

原创 MySQL面试

MySQL基础知识数据库三大范式?MySQLmysql有关权限的表都有哪几个?mysql有哪些数据类型?超键、候选键、主键、外键分别是什么?SQL语句主要分为哪几类?说一说SQL有哪几种约束?说一说SQL的关联查询?说一说SQL的子查询?mysql中 in 和 exists 的区别?varchar与char的区别?mysql中int(10)和char(10)以及varchar(10)的区别?FLOAT和DOUBLE的区别是什么?UNION与UNION ALL的区别?MySQ..

2021-01-20 22:44:52 1860 1

原创 Spring Cloud 二 之Eureka

点击:Spring Cloud & Spring Cloud Alibaba完整学习路线Spring Cloud 二 之Eureka1 Eureka基础知识1.1 什么是服务治理1.2 什么是服务注册1.3 Eureka两组件2 单机Eureka构建2.1 Eureka服务注册中心构建2.2 将cloud-provider-payment8001注册进服务注册中心2.3 将cloud-consumer-order80注册进服务注册中心3 集群Eureka构建4 生产者cloud-provider

2021-01-19 22:25:38 66

原创 Spring Cloud 二 之父工程的创建

Spring Cloud 二 之父工程的创建1 创建父工程Project1.1 父工程的POM文件1.1.1 完整pom文件1.1.2 dependencyManagement和dependencies1.1.3 maven如何跳过单元测试2 支付模块的构建2.1 Cloud-provider-payment8001 微服务提供者Module模块3 消费模块的构建3.1cloud-consumer-order80 微服务消费者订单Module模块4 项目重构1 创建父工程Project1.New P

2021-01-19 22:24:50 218 1

原创 Spring Cloud 一 之体系架构

Spring Cloud之体系架构1 Spring Cloud包含哪些技术架构2 Spring Cloud简介1 Spring Cloud包含哪些技术架构服务注册与发现服务调用服务熔断负载均衡服务降级服务消息队列配置中心管理服务网关服务监控全链路追踪自动划构建部署服务定时任务调度操作2 Spring Cloud简介Spring Cloud是什么?SpringCloud=分布式微服务架构的一站式解决方案,是多种微服务架构落地技术的集合体,俗称微服务全家桶。Spring

2021-01-19 22:24:16 122

原创 MySQL 三 索引

文章目录什么是索引?为什么要使用索引(优缺点)?索引有哪几种类型?索引的使用场景有哪些?索引的基本原理索引的创建方式有哪几种?如何删除索引?主键索引与唯一索引的区别?什么是覆盖索引?聚集索引和辅助索引(非聚集索引)的区别?索引的数据结构有哪些?非聚簇索引一定会回表查询吗?索引设计的原则?使用索引一定能够提高查询的性能吗?什么是最左前缀原则(最左匹配原则)?B+树与B树?知道explain吗?说一说什么是索引?为什么要使用索引(优缺点)?索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部

2021-01-19 19:10:16 643

原创 MySQL 二 存储引擎

文章目录MySQL存储引擎MyISAM与InnoDB的区别?InnoDB引擎的4大特性?如何选择合适的存储引擎?常用的存储引擎有MyISAM和InnoDB存储引擎。MySQL存储引擎MyISAM与InnoDB的区别?MyISAMInnodb存储结构每张表被存放在三个文件:frm-表格定义、MYD(MYData)-数据文件、MYI(MYIndex)-索引文件所有的表都保存在同一个数据文件中(也可能是多个文件,或者是独立的表空间文件),InnoDB表的大小只受限于操作系统文件的大小,一般为2GB存储空间M

2021-01-18 16:34:25 319

原创 MySQL 一 基础知识

文章目录数据库三大范式?MySQLmysql有关权限的表都有哪几个?mysql有哪些数据类型?超键、候选键、主键、外键分别是什么?SQL语句主要分为哪几类?说一说SQL有哪几种约束?说一说SQL的关联查询?说一说SQL的子查询?mysql中 in 和 exists 的区别?varchar与char的区别?mysql中int(10)和char(10)以及varchar(10)的区别?FLOAT和DOUBLE的区别是什么?UNION与UNION ALL的区别?MySQL中delete,drop,truncate

2021-01-18 16:13:21 782

原创 Redis集群相关问题

文章目录说一说redis的复制功能旧版本redis复制功能(2.8之前)新版本redis复制功能(2.8之后)说一说redis的哨兵(Sentinel)模式redis哨兵模式是如何检测服务器是否下线的?redis集群方案其他问题redis 集群模式的工作原理能说一下么?在集群模式下,redis 的 key 是如何寻址的?分布式寻址都有哪些算法?Redis集群会有写操作丢失吗redis集群最大节点个数是多少?Redis集群如何选择数据库?说一说redis的复制功能在 Redis中,用户可以通过执行SLAV

2021-01-17 16:44:56 461

原创 redis缓存异常

文章目录缓存雪崩缓存穿透缓存击穿缓存预热缓存降级热点数据和冷数据缓存热点key缓存雪崩什么是缓存雪崩?缓存雪崩是指缓存同一时间大面积的失效,所以,后面的请求都会落到数据库上,造成数据库短时间内承受大量请求而崩掉。解决方案缓存数据的过期时间设置随机,防止同一时间大量数据过期现象发生。一般并发量不是特别多的时候,使用最多的解决方案是加锁排队。伪代码:/*注意:加锁排队只是为了减轻数据库的压力,并没有提高系统吞吐量。假设在高并发下,缓存重建期间key是锁着的,这是过来1000个请求999个都

2021-01-17 14:27:47 135

原创 详解Redis事务

文章目录redis的事务概念redis事务的三个阶段redis事务的四大特性(ACID)redis中的watch命令了解吗?总结redis的事务概念Redis通过MULTI、EXEC、WATCH等命令来实现事务( transaction)功能。事务提供了一种将多个命令请求打包,然后一次性、按顺序地执行多个命令的机制,并且在事务执行期间,服务器不会中断事务而改去执行其他客户端的命令请求,它会将事务中的所有命令都执行完毕,然后才去处理其他客户端的命令请求。以下是一个事务执行的过程,该事务首先以一个MULT

2021-01-17 11:24:11 179

转载 Redis 到底是单线程还是多线程?

转载:https://www.cnblogs.com/javastack/p/12848446.html其他文章:http://shangdixinxi.com/detail-1502161.html这个问题你要从多个方面回答,如果你仅仅只回答 “单线程” 肯定是说不过去的,为什么呢?Redis 单线程到底指什么?没错,大家所熟知的 Redis 确实是单线程模型,指的是执行 Redis 命令的核心模块是单线程的,而不是整个 Redis 实例就一个线程,Redis 其他模块还有各自模块的线程的。下面

2021-01-17 10:40:12 238

原创 详解Redis持久化机制

文章目录什么是redis持久化机制?redis持久化机制有哪几种RDB持久化AOF持久化两种Redis持久化机制之间的区别?两种Redis持久化机制的优缺点?如何选择合适的持久化机制?Redis持久化数据和缓存怎么做扩容?什么是redis持久化机制?redis持久化机制有哪几种RDB持久化AOF持久化两种Redis持久化机制之间的区别?两种Redis持久化机制的优缺点?如何选择合适的持久化机制?Redis持久化数据和缓存怎么做扩容?...

2021-01-16 16:10:04 127

Explain详解与索引最佳实践.pdf

Explain详解与索引最佳实践.pdf

2021-01-19

01-05vue基础.zip

vue学习资料

2020-05-22

空空如也

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

TA关注的人

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