自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(80)
  • 资源 (2)
  • 收藏
  • 关注

原创 ✨SQL-递归CTE

WITH 临时笔记本 AS (SELECT ... FROM ... -- 先写点笔记SELECT * FROM 临时笔记本;-- 再用笔记做分析特点:📌 临时性:仅在当前查询有效(像一次性草稿纸)🧩 可复用:可在一个查询中多次引用🪄 自描述:增强SQL可读性(比子查询更清晰)清晰结构:WITH CTE名称 AS (...) 像写大纲递归力量:UNION ALL + 终止条件 实现循环严格模式生存法则:GROUP BY 要完整!

2025-03-11 13:25:13 380

原创 Shenandoah GC 核心知识点

Shenandoah:适合追求极致低延迟的场景,通过并发回收减少 STW,但需牺牲少量吞吐和内存。G1:更适合通用场景,平衡吞吐与延迟,成熟稳定。根据业务需求选择,小堆选 G1,大堆高敏感选 Shenandoah!🚀。

2025-02-20 09:09:24 678

原创 ZGC 核心知识点

ZGC 核心知识点。

2025-02-20 09:08:28 701

原创 Java 语法新特性(Records、Pattern Matching、Sealed Classes)深度解析(11/17/21)✨

简化不可变数据载体的定义。:精细化控制类继承关系。

2025-02-19 08:52:10 459

原创 ✨G1核心知识点解析

G1通过Region化内存、RSet、SATB等机制,在可控停顿时间内实现高效回收,尤其适合大内存和低延迟场景。调优需关注。

2025-02-19 08:47:54 875

原创 ✨Java 虚拟线程(Virtual Threads)✨

适用场景✅ Web服务器 ✅ 数据库访问 ✅ 微服务调用✅ 文件IO操作 ✅ 高并发消息处理不适用场景❌ 复杂数学计算 ❌ 视频编码 ❌ 机器学习训练。

2025-02-18 08:50:56 617

原创 ✨Spring Boot 自动配置原理✨

Spring Boot 的自动配置(Auto-Configuration)是其核心特性之一,它简化了 Spring 应用的开发,减少了繁琐的配置。自动配置的原理是基于 **条件化配置** 和 **约定优于配置** 的思想。

2025-02-18 08:47:51 651

原创 Spring Boot 启动优化✨

通过以上方法,你可以显著优化 Spring Boot 的启动速度,提升开发和部署效率。记住,优化是一个持续的过程,需要根据具体场景进行调整哦!💪希望这些内容对你有帮助!如果有其他问题,随时问我哦~😊。

2025-02-17 09:03:55 1562

原创 Spring Boot Actuator 监控✨

Spring Boot Actuator 是 Spring Boot 提供的一个强大的监控和管理工具,它可以帮助你深入了解和监控你的应用程序的运行状态。

2025-02-17 09:02:32 858

原创 ✨JMH(Java Microbenchmark Harness)✨

JMH(Java Microbenchmark Harness)是一个专门用于编写、运行和分析Java微基准测试的工具。它由OpenJDK团队开发,旨在提供精确的基准测试结果,避免常见的基准测试陷阱,如JVM的优化、即时编译(JIT)等影响。

2025-02-15 15:19:17 591

原创 服务网格(Istio)核心概念与关键知识点

服务网格是微服务间的专用通信基础设施层,通过**轻量级代理(Sidecar)**透明处理服务间流量,实现安全、可靠、可观测的通信。

2025-02-15 15:17:28 665

原创 MySql性能优化(七)查询优化

MySql查询优化 ,执行过程优化,查询优化器,特定类型查询优化

2023-02-09 20:17:53 2306 2

原创 MySql性能优化(六)索引监控

索引监控

2023-02-03 17:17:15 861

原创 MySql性能优化(五)优化细节

MySql优化点

2023-01-29 15:17:53 402

原创 MySql性能优化(四)索引

MySql 索引 知识点总结

2022-12-22 10:49:45 1154

原创 MySql性能优化(三)执行计划详解

Mysql 执行计划各个参数详解

2022-12-10 14:12:04 997

原创 MySql性能优化(二)范式、主键、存储引擎

范式化的表,在查询的时候经常需要很多的关联,因为单独一个表内不存在冗余和重复数据。这导致,稍微复杂一些的查询语句在查询范式的schema上都可能需要较多次的关联。这会增加让查询的代价,也可能使一些索引策略无效。因为范式化将列存放在不同的表中,而这些列在一个表中本可以属于同一个索引。在设计数据库时,有范式和反范式的说法,下面总结一下各自的优缺点。实际使用过程当中一般范式反范式配合使用。主键一般分为 代理主键,自然主键。

2022-11-24 20:20:50 368

原创 MySql性能优化(一)数据类型优化

Mysql数据类型优化以及字符集的选择

2022-11-20 15:27:30 1224

原创 Fliter配置请求日志埋点

一个用于记录请求路径的拦截器

2022-09-06 19:52:58 252

原创 order by + limit 重复数据

踩坑记录

2022-08-19 15:34:28 742 1

原创 skywalking快速上手

Skywalking 链路追踪 快速上手 (windows 为例)

2022-07-06 17:10:54 2596

原创 使用云效 修改 layui 环境变量

使用云效添加执行步骤,切换环境变量

2022-06-01 17:32:28 385

原创 MVCC多版本控制

MySQL 隔离级别MVCC版本链undo 日志不可重复读幻读

2022-05-29 22:03:48 750 1

原创 TIDB简单了解

官方文档https://docs.pingcap.com/zh/tidb/stable/tidb-architectureHTAPTIDB应用场景体系结构TIDB的管理及调度-PDTIDB链接层和SQL层-TIDB Server

2022-04-24 13:37:20 4658

原创 Arthas-idea

Arthas官方文档:https://arthas.aliyun.com/doc/commands.html

2022-03-08 14:00:20 2814

原创 JVM(四) 垃圾回收算法

引用计数法根可达算法标记清除算法复制算法标记压缩算法分代算法

2022-03-07 15:25:30 2573

原创 JVM(三) -运行时数据区(Runtime Data Area)、栈帧(Frame)

​简单的模拟一下java运行时数据区(Runtime Data Area)其中,三个红色的部分,pc寄存器,本地方法栈,虚拟机栈是线程私有,随着线程创建销毁,生命周期与线程相同。蓝色的部分位线程共享区域,也是JVM垃圾收集器(GC)负责的区域。GC主要处理Heap所有的区域和一部分Method Area。先说红色的部分,线程私有区域。jvm推荐读本,官方网站上给的 The Java ® Virtual Machine Specification Java SE 8 EditionPC:

2022-01-18 16:33:39 1165

原创 JVM(二) JMM、指令重排等

JSR 规范 Java Memory Model (JSR 133)JSR133中文版:http://ifeve.com/wp-content/uploads/2014/03/JSR133%E4%B8%AD%E6%96%87%E7%89%881.pdfJSR133: http://www.cs.umd.edu/~pugh/java/memoryModel/jsr133.pdfJMM(Java Memory Model (java内存模型 ≠ java虚拟内存模型))JMM 是一种符合内存规范的,屏

2022-01-11 22:33:30 616

原创 归并排序、Master公式

文章目录基本思想实现对数器验证递归时间复杂度计算 Master 公式基本思想归并排序采取分治的思想进行排序,借用一张图片说明一下将n个元素从中间切开,分成两部分。(左边可能比右边多1个数) 将步骤1分成的两部分,再分别进行递归分解。直到所有部分的元素个数都为1。 从最底层开始逐步合并两个排好序的数列。优点在于,分治之后,合并排序的过程时间复杂度是O(N)(只需要扫描一遍就可以将两个有序的数组合并成一个有序数组)实现 public static void MergeSort(int[] arr

2022-01-06 10:13:32 994

原创 JVM(一) 类的加载过程、自定义加载器、JVM执行模式设置

文章目录CLASS 加载过程Loading类加载器双亲委派自定义类加载器linkingVerificationPreparationResolutioninitializingJVM执行模式解释模式编译模式混合模式调优参数CLASS 加载过程Loading首先,类加载器通过类的全路径限定名称读取类的二进制字符流(获取二进制字符流)其次,将字节流代表的静态存储结构化为方法去的运行时数据(结构化静态数据)最后,在堆生成一个代表这个类的class实例(不是这个类的实例)(在内存中生成class对象)

2021-12-30 15:54:20 799

原创 RSA加密-防止自增id被遍历

文章目录非对称加密优点:缺点:RSA 算法demo加密demo入口解密demo非对称加密非对称加密需要两个密钥:公钥 (publickey) 和私钥 (privatekey)。公钥和私钥是一对,如果用公钥对数据加密,那么只能用对应的私钥解密。如果用私钥对数据加密,只能用对应的公钥进行解密。因为加密和解密用的是不同的密钥,所以称为非对称加密。优点:安全缺点:加密和解密花费时间长、速度慢,只适合对少量数据进行加密RSA 算法RSA算法是一种典型的非对称加密的算法具体信息安利一篇博客htt

2021-12-22 15:00:11 1592

原创 线程池、自定义线程工厂、自定义拒绝策略

线程池在阿里巴巴的开发规约当中,有这么一条为了防止创建销毁线程切换带来的开销,我们需要尽量使用线程池。创建方法在代码当中,有这么些个类![在这里插入图片描述](https://img-blog.csdnimg.cn/349556e6bc2646b2bbcde21c9c379f79.jpg#pic_center使用ThreadPoolExecutor创建线程,ExecutorService service = new ThreadPoolExecutor(‘七个参数’);我们debug进入

2021-12-16 18:16:37 2206

原创 异或(^)

异或(^)计算:性质Ques1.不使用额外空间交换两个数2.一个数组中其它数都出现多次,只有一个出现单次,求出现单次的数3.一个数组中其它数都出现多次,只有两个出现单次,求出现单次的数计算:计算时可以看作二进制无进位相加性质0^N == N , N^N = 0异或运算满足交换律结合律Ques1.不使用额外空间交换两个数 a = a^b; b = a^b; //b = a^b^b = a^0 = a a = a^b; //a = a^b^a = 0^b

2021-12-13 15:08:43 375

原创 JAVA 多线程 总结

基础概念进程、线程、协程首先来讲下这三种的区别。举个例子,我们启动我们的 xx.exe ,首先是会在内存当中开辟一块空间给这个程序加载到内存当中,要启动它的话,我们的系统要找到这个程序内部的主线程进行运行。定义:进程是操作系统进行资源分配的基本单位线程是调度执行的基本单位,多个线程共享一个进程的资源协程/纤程 是绿色线程,即用户管理的而不是操作系统管理的线程Ques:单核cpu设置多线程有意义嘛 有意义,线程有些操作(等数据,调io啥的)不消耗cpucpu密集型和 io 密集型 c

2021-11-22 11:50:54 1288 2

原创 Data_Warehouse(DW 数仓(一))

数据仓库(Data WareHouse,DW / DWH),数据仓库是面对主题的,集成的,稳定的,反应历史变化信息的数据集合,可以对管理者进行决策支持。

2021-10-25 15:42:40 446

原创 数据结构-单调栈

2021-05-21 15:48:35 93

原创 数据结构-滑动窗口问题

我为大家画了一下大致的流程以下是按照上面的思路对Leetcode239题的解答,理解了滑动窗口之后这道题目就很简单了,代码如下public int[] maxSlidingWindow(int[] nums, int k) { //双端队列 LinkedList<Integer> linkedList = new LinkedList(); //结果集 数量为 nums.length - k + 1 int[] .

2021-04-30 00:04:25 174

原创 按照模板批量导出Excel并压缩下载

自顶而下的编程方法遇到复杂的问题时,先将需求拆分,将我们拆分的需求分成一个一个的模块,也可以作为函数,每一个模块负责自己的功能。这个时候不要纠结于模块内部的实现,我们只需要将模块的名字以及这个模块负责什么内容定好就可以了(简单的说:先搭好一个架子)保证当前逻辑正确后,把刚才假装存在的函数填上。遇到一个需求,需要通过数据库中的数据,按照给定的模板,导出一批 xlsx文件,并且将其压缩下载。这里我尝试着将需求拆分,变成一个个的小问题。这里采用的思路是:将文件导出到某个文件夹中,将文件夹压缩,删除文件夹以

2021-02-20 16:53:44 496

原创 Builder模式简单应用与自定义Select的Mapper模板

公司使用的 freemarker自定义代码生成模板,Mapper中在使用 SELECT * ,这无疑对性能造成了极大的影响,造成了很多不必要的IO读写。因此在想着改进一下代码,灵活的在使用中指定哪些字段需要查询,提升性能。Builder模式建造者模式(Builder Pattern)也叫做生成器模式,其定义如下:Separate the construction of a complex object from its representation so that the same constru.

2021-02-05 20:36:37 333

原创 @interface 与aop

在业务中有这样的场景:我需要在调某些方法的时候,需要提前拿出它的参数作业务判断,然后判断通过的代码再进行业务操作,此处我们使用自定义注解来解决问题。自定义注解import org.springframework.stereotype.Component;import java.lang.annotation.Documented;import java.lang.annotation.ElementType;import java.lang.annotation.Retention..

2020-12-01 20:00:19 834

JAVA_API_1.7中文(最新、最全).chm.7z

java_api_1.7中文,java_api_1.7中文,怎么看自己百度

2019-06-18

java-日志-log4j.7z

log4j是eclipse 当中常用的记录日志的文件,使用方法详见我的博客。在初涉边框下面有一节描述日志使用的

2019-06-18

空空如也

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

TA关注的人

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