自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java 堆外内存及调优

直接内存(Direct Memory)并不是虚拟机运行时数据区的一部分,并非Java虚拟机规范中定义的内存区域。但是这部分内存的频繁使用,也可能导致 OutOfMemoryError 异常。直接内存的分配不受Java堆大小的限制,但是受限于本机总内存大小和处理器寻址空间。一般服务器运维人员会根据实际内存设置-Xmx等参数,但经常忽略直接内存,使得动态扩展时出现 OutOfMemeoryError 异常。JDK 1.4中加入了NIO类,引入一种基于通道(Channel)与缓冲区(Buffer)

2024-04-01 23:00:29 977

原创 【环境配置】Ubuntu MySQL 8.0.28 安装并允许外部客户端连接

Ubuntu MySQL 安装及配置教程,全程无坑

2024-03-26 20:36:05 920

原创 探索一致性哈希算法以及在 Dubbo 负载均衡中的应用

图解均衡算法:一致性哈希,并详细介绍 Dubbo 对一致性哈希算法的应用,简介清晰,易于理解

2024-03-26 20:10:18 1083

原创 图解 LFU 缓存淘汰算法以及在 Redis 中的应用(附带个人完整代码实现)

详细介绍 LFU 缓存淘汰算法,使用图解的方式辅助理解,并给出了完整的代码实现。除此之外,还介绍了 LFU 算法在 Redis 中的实现。

2024-03-22 00:20:52 912

原创 【深度长文】聊一聊 Java AbstractQueuedSynchronizer 以及在 ReentrantLock 中的应用

一篇深入分析 Java AQS 和 ReentrantLock 的技术博客,包含丰富的图片以及代码注释,钻研同步工具的底层源码。

2024-03-18 20:50:24 979 1

原创 【环境配置】Linux MySQL8 忘记密码解决措施

可用的 MySQL 忘记密码解决方案,步骤详细,配上图片讲解。

2024-03-10 13:00:31 504 1

原创 【深度长文】深入分析Java线程池——ThreadPoolExecutor

一篇深入的线程池源码研究博客,图片形象生动、代码注释详细。

2024-03-10 00:12:12 890

原创 图解 TCP 拥塞控制

TCP 协议栈之拥塞控制篇,带你深入 TCP 拥塞控制算法,使用图解的方式,清晰展现相关细节,帮助你学习相关知识点。

2024-03-05 21:23:52 1239

原创 解密数据结构——堆 Heap

本篇博客记录了我的学习旅程,通过代码和图片结合的方式深入浅出地介绍了堆的基本概念、核心原理、基本操作以及相关应用(TopK 、定时任务)。无论你是数据结构小白还是希望巩固知识的同学,希望这篇博客为你提供宝贵的见解和代码实践,让我们一起学习,共同进步吧!

2024-02-27 14:19:29 605 1

原创 一起来DIY Docker镜像:用Dockerfile打造你的第一个容器应用

本文详细介绍如何使用 Dockerfile 定制一个镜像,并且以 SpringBoot 应用容器化部署作为案例。本篇博客对新手友好,图文详尽,相信对你学习 Docker 容器相关知识有帮助。

2024-02-22 00:57:25 904 1

原创 手把手教你在Docker中安装Nginx(图文超详细)

含图文超详细介绍如何在 Docker 中安装 Nginx,并讲解如何使用 Nginx 进行后端服务器集群的负载均衡。

2024-02-19 13:13:56 13188 4

原创 数据可视化不再难:后端开发者的Echarts快速上手指南

面向后端、前端开发者的 Echarts 指南,包含多种 Echarts 图表的配置详解,还介绍了如何基于 Spring Boot 和 Thymleaf,从后端应用动态获取数据并渲染到 HTML 模板。本博客的特点:案例多样,讲解清晰,代码完整可复现。

2024-02-17 00:08:07 1481 1

原创 修改 Zookeeper 的客户端连接端口(默认2181端口)

修改 zookeeper 的客户端连接端口

2024-02-15 21:52:15 1760 1

原创 【bug解决】Content-Type ‘application/x-www-form-urlencoded;charset=UTF-8‘ is not supported

bug解决:Spring MVC 媒体类型不支持异常

2024-02-12 11:04:07 1058 1

原创 【工具介绍】Java 解压 lz4 压缩的数据

推荐一款使用于 Java 语言简单易用的 Lz4 压缩、解压缩工具 aircompressor

2024-02-08 01:32:05 748

原创 【Bug解决】themleaf 相对路径引用 js 静态文件失效

解决 Spring Boot + themleaf 相对路径引用 js 静态文件失效的 bug

2024-02-07 00:15:06 367 1

原创 解锁Apache Shiro:新手友好的安全框架指南(一)——整体架构与身份认证

新手友好的 Shiro 框架指南,本文为系列第一篇,着重介绍 Shiro 整体架构与认证功能。

2024-02-05 11:37:00 819 1

原创 基于Netty实现HTTP请求转换为RPC泛化调用

本文介绍如何基于 Netty 实现 API 网关中协议转换功能,即 Http 请求转 RPC 泛化调用。文章从解析字节流开始,结合Netty源码,深入浅出地介绍协议转换的完整流程,希望对大家有所帮助。

2024-01-16 00:28:28 1142 1

原创 一看就会!Dubbo 泛化调用简明教程——含不同类型入参处理

Dubbo 泛化调用入门教程,案例详细,简洁易懂!

2024-01-10 21:39:34 2219

原创 新手极简入门 VUE3(一)

新人入门 VUE 简单清晰的 Demo 及特性介绍

2023-12-15 11:19:09 119

原创 acwing830(单调栈)

(acwing 830单调栈)给定一个长度为N的整数数列,输出每个数左边第一个比它小的数,如果不存在则输出-1。输入格式:第一行包含整数N,表示数列长度。第二行包含N个整数,表示整数数列。输出格式:共一行,包含N个整数,其中第i个数表示第i个数的左边第一个比它小的数,如果不存在则输出-1。数据范围:1≤N≤1e5 1≤数列中元素≤1e9 输入53 4 2 7 5输出 -1 3 -1 2 2 #include<iostream>using

2021-09-03 12:59:14 157

原创 acwing 154(滑动窗口)——单调队列法

题目如下给定一个大小为 n≤1e6 的数组。有一个大小为 k 的滑动窗口,它从数组的最左边移动到最右边。你只能在窗口中看到 k 个数字。每次滑动窗口向右移动一个位置。输入包含两行:第一行包含两个整数 n 和 k,分别代表数组长度和滑动窗口的长度。第二行有 n 个整数,代表数组的具体数值。同行数据之间用空格隔开。输出格式:输出包含两个。第一行输出,从左至右,每个位置滑动窗口中的最小值。第二行输出,从左至右,每个位置滑动窗口中的最大值。 输入样例:8 31 3 -1 -3 5 3 6

2021-09-03 12:52:19 112

原创 acwing 831——KMP算法

KMP算法(acwing 831)给定一个模式串S,以及一个模板串P,所有字符串中只包含大小写英文字母以及阿拉伯数字。模板串P在模式串S中多次作为子串出现。求出模板串P在模式串S中所有出现的位置的起始下标。输入格式第一行输入整数N,表示字符串P的长度。第二行输入字符串P。第三行输入整数M,表示字符串S的长度。第四行输入字符串M。输出格式:共一行,输出所有出现位置的起始下标(下标从0开始计数),整数之间用空格隔开。数据范围:1≤N≤10^4 1≤M≤10^5 1、p[ ]

2021-09-01 13:01:22 304

原创 二维差分——acwing798

二维差分题目描述(acwing 798)题目描述:输入一个n行m列的整数矩阵,再输入q个操作,每个操作包含五个整数x1, y1, x2, y2, c,其中(x1, y1)和(x2, y2)表示一个子矩阵的左上角坐标和右下角坐标。每个操作都要将选中的子矩阵中的每个元素的值加上c。请你将进行完所有操作后的矩阵输出。输入格式第一行包含整数n,m,q。接下来n行,每行包含m个整数,表示整数矩阵。接下来q行,每行包含5个整数x1, y1, x2, y2, c,表示一个操作。输出格式:共 n 行,每

2021-08-28 11:16:46 123

原创 二分法排序——以acwing 789为例

二分法排序(acwing 789)给定一个按照升序排列的长度为 n 的整数数组,以及 q 个查询。对于每个查询,返回一个元素 k 的起始位置和终止位置(位置从 0 开始计数)。如果数组中不存在该元素,则返回 -1 -1。输入格式第一行包含整数 n 和 q,表示数组长度和询问个数。第二行包含 n 个整数(均在 1∼10000 范围内),表示完整数组。接下来 q 行,每行包含一个整数 k,表示一个询问元素。输出格式共 q 行,每行包含两个整数,表示所求元素的起始位置和终止位置。如果数组中

2021-08-27 20:51:43 142 2

原创 C with STL学习笔记

字符串(string)ASCII编码#include<iostream>#include<cstdio>using namespace std;int main(){ for(int i = 0; i < 128; i++) printf("%d: %c\n", i, (char)i); return 0;}//'A'~'Z'为65~90; 'a'~'z'为97~122; '0'~'9'为48~57因此字符可以当成整数进行算术运算int

2021-08-27 12:21:39 847

原创 快速排序——以acwing 785为例

快速排序以acwing 785为例/*给定你一个长度为 n 的整数数列。请你使用快速排序对这个数列按照从小到大进行排序。并将排好序的数列按顺序输出。输入格式:输入共两行,第一行包含整数 n。第二行包含 n 个整数(所有整数均在 1∼109 范围内),表示整个数列。输出格式:输出共一行,包含 n 个整数,表示排好序的数列。数据范围:1≤n≤100000 */分析:本体可以使用快速排序算法。步骤如下:选取基准点pivot划分,根据选取好的pivot将数组q[N]分成小于等于pi

2021-08-27 12:12:01 183

原创 浙大mooc翁凯 C语言笔记

C语言学习笔记结构体(struct)结构体的嵌套struct point{ int x; int y;};//定义平面上的点struct rectangle{ struct point p1; struct point p3;}//已知斜对角两点,可定义一个矩形如果有struct rectangle r;,就可以有r.p1.x、r.p1.y、r.p2.x、r.p2.y如果有变量定义:struct rectangle r, *rp;rp = &r;

2021-08-19 01:27:37 904

空空如也

空空如也

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

TA关注的人

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