自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

磊杰的博客

把一件不喜欢但是也不讨厌的事情坚持下去

  • 博客(60)
  • 收藏
  • 关注

原创 RocketMQ系列之消费者源码入门

rocketMQ消费者实现源码入门

2025-04-01 11:14:43 822

原创 使用令牌桶算法通过redis实现限流

令牌桶算法是一种常用的限流算法,它可以平滑地控制请求的处理速率。在 Java 中结合 Redis 实现令牌桶算法,可以利用 Redis 的原子操作来保证多节点环境下的限流效果。

2025-02-07 23:00:37 574

原创 Mysql系列-索引优化

使用Explain关键字可以模拟优化器执行SQL语句,分析查询语句或结构的性能瓶颈,在select语句之前增加explain关键字,mysql会在查询上设置一个标记,执行查询会返回执行计划的信息,而不是执行当前SQL;其中:如果from中包含子查询,仍会执行该子查询,将结果放入临时表中;

2024-09-19 09:08:13 1295

原创 Mysql系列-索引简介

mysql系列之索引

2024-09-11 09:11:54 653 1

原创 Docker安装Redis集群记录

记录docker安装redis集群

2024-08-18 17:29:59 329

原创 Docker常见命令

【代码】Docker常见命令。

2024-08-03 19:05:25 275 1

原创 TCP三次握手与四次挥手

如果重发指定次数之后,服务端仍然未收到客户端的ACK应答,那么一段时间后(大概64s),服务端会给客户端发送RTS报文(连接重置),并进入CLOSED状态,防止SYN洪泛攻击,客户端收到RTS报文后,会关闭连接;第三次的ACK在网络中丢失,那么服务端该TCP连接的状态为SYN_RECV,并且会根据 TCP的超时重传机制,会等待3秒、6秒、12秒后重新发送SYN+ACK包,以便客户端重新发送ACK包。TCP建立连接,通过三次握手能防止历史连接的建立,减少双方不必要的资源开销,能帮助双方同步初始化序列号。

2024-06-09 19:37:31 796 1

原创 JAVA基础之线程池原理与源码简读

例如Web开发中,服务器需要接受并处理来自外部的请求,所以会为每一个请求分配一个线程来处理。如果并发的请求数量非常高,而且单个请求线程执行的时间非常短,就会出现频繁的创建和销毁线程,如此会大大降低系统的效率,因为可能会出现服务器为每个请求创建先线程和销毁线程上花费系统资源要比处理实际的用户请求的时间和资源更多;系统可以支持创建的线程数量也是有上限的(每个线程实际对应的一个操作系统文件描述符);

2024-05-03 21:33:36 1149

原创 JAVA基础之并发编程02-Synchronized

一个同步工具或者一种同步机制,它通常被描述为一个对象。与一切皆对象一样,所有的Java对象是天生的mointor,每一个java对象都有成为monitor的潜质,因为在java设计中,每一个java对象在new出来的时候就带了一把看不见的锁,它叫做内部锁或者Monitor锁。也就是通常说的Synchronized的对象锁,MarkWord锁标识位为10,其中指针指向的是Monitor对象的起始地址。_count = 0;// 记录个数// 处于wait状态的线程,会被加入到_WaitSet。

2024-04-27 12:51:49 942

原创 JAVA基础之垃圾收集器

当前虚拟机的垃圾收集一般采用分代收集算法,这种算法本身没有创新性,只是根据对象存活周期的不同将内存分为几块。一般将java堆内存分为新生代和老年代,这样我们就可以根据不同年龄到的特点选择不同的垃圾收集算法。标记整理。

2024-04-22 22:39:05 1089 1

原创 java基础之类运行与双亲委派机制简介

loadClass(String,boolean):实现了双亲委派机制;findClass:默认是空方法,自己类加载器时,主要是重写findClass方法;/*** 自定义类加载器*/try {Class<?try {throw new RuntimeException("加载class文件异常!");try {Order1源码:放置目录:D:\uclazz\com\ddu\jvm自己javac Order1.java。

2024-04-22 18:11:55 1006

原创 Java基础之JVM对象内存分配机制简介

大量对象分配在Eden区,Eden区满了后会触发MinorGC,可能99%以上的对象会变成垃圾而被回收掉,而剩余存活的对象会被挪到空的Survivor0区,下次Eden区满后会触发MinorGC,把Eden区+Survivor0区中存活的对象复制到Survivor区,并Eden区和Survivor区垃圾回收,因此新生代的对象大部分是朝生夕死,存活时间比较多,所以JVM默认的8:1:1比例很合适,原则:让Eden区尽量大,Survivor区足够用就可以;

2024-04-21 23:00:45 1732

原创 Java基础之JVM基础调优与常见问题

以下命令的介绍,全部在jdk8环境下运行的;

2024-04-19 23:07:20 1249 1

原创 mysql基本数据类型范围与存储说明

mysql基本数据类型范围与存储说明

2023-07-20 09:27:05 1540

原创 GCC版本导致Redis6.0编译报错

gcc得版本问题,新版本redis6.0。

2023-04-30 09:56:05 328

原创 Elk运维-Elastic7.6.1集群安装部署

elk集群安装部署

2023-04-15 23:28:05 465

原创 JAVA基础:Collections之Map

Collections之Map

2023-03-12 09:28:23 332

原创 JUC-Synchronized相关内容

Synchronized

2023-02-25 22:26:52 297

原创 The semaphore timeout period has expired

Linux连接超时自动断开问题

2022-11-06 19:32:37 2334

原创 Hadoop2.7.6集群安装部署记录(3台云服务器)

Linux三台机器集群部署Hadoop2.7.6

2022-11-03 13:01:07 1294

原创 插入排序byJava

插入排序

2022-11-01 09:55:24 113

原创 Linux chown命令:修改文件和目录的所有者和所属组

修改文件和目录的所有者和所属组

2022-10-29 07:38:26 822

原创 二分搜索算法-java

有序数组搜索指定元素

2022-10-25 10:21:24 370

原创 Linux免密登录

Linux不同机器之间免密登录

2022-10-21 09:36:40 315

原创 Linux账号普通账号新建与授权

Linux普通账号新建、授权,禁止root远程登录

2022-10-11 09:21:46 487

原创 Linux文件常用快捷键

日常进行文件操作时,需要文件首行、尾行,行首、行尾;

2022-10-10 19:08:44 722

原创 延迟消费的几种实现方案

订单自动取消?商品定时上下架?定时短信?

2022-09-06 12:59:34 1063

原创 默认关闭idea2020的注释doc的rendered view模式

idea的编辑默认的日志格式

2022-07-15 16:12:37 666

原创 Java实现解析验证cron

依赖二方库:<!-- 注意: 这里必须要使用 9.1.6 及以上版本, 之前的版本有严重漏洞 --><dependency> <groupId>com.cronutils</groupId> <artifactId>cron-utils</artifactId> <version>9.1.6</version></dependency>执行校验逻辑:imp

2022-05-19 15:43:06 1090

原创 mac自定义命令与永久生效

mac自定义命令与永久生效,在mac上实现常用的不支持的自定义命令;

2022-05-15 17:58:20 1450

原创 mysql开启 Binlog 功能

MySQL Server 的四种类型的日志:Error Log、General Query Log、Slow Query Log 和 Binary Log 。Error Log即 错误日志,记录 mysqld 发生的一些错误。General Query Log即 一般查询日志,记录 mysqld 正在做的事情,如客户端的连接和断开、来自客户端每条 Sql Statement 记录信息;如果你想准确知道客户端究竟传了什么内容给服务端,这个日志就非常管用了,当然了这货非常影响性能。Slow Qu..

2022-05-04 21:23:18 8722

原创 JDK下载安装-Linux-2022年05月03日

为了找到我想用的jdk版本,不想吐槽了,记录一下自己找到的截止到2022年05月03日最新Oracle官网下载jdk的地址jdk下载地址:Java Archive | Oraclejdk8 linux X64版本的下载地址:​​​​​​https://download.oracle.com/otn/java/jdk/8u331-b09/165374ff4ea84ef0bbd821706e29b123/jdk-8u331-linux-x64.tar.gz?AuthParam=1...

2022-05-03 12:43:29 2740

原创 mysql安装教程-gz文件安装

mysql-5.7.36安装

2022-05-02 21:48:25 1927

原创 Zookeeper伪分布式集群部署指南

zookeeper伪集群安装部署,三个实例组成的伪集群

2022-04-22 09:19:52 141

原创 GIT-常用命令

查看当前分支的创建人等信息切换到需要查看分支的创建人git log --oneline master | cut -d " " -f 1 | tail -1 | xargs git log

2021-07-30 11:59:18 95

原创 tar-常用命令说明

tar-c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。-z:有gzip属性的-j:有bz2属性的-Z:有compress属性的-v:显示所有过程-O:将文件解开到标准输出下面的参数-f是必须的-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。# tar -cf .

2021-07-29 09:12:29 520

原创 JVM-jmap使用记录

jmap主要可以用于打印Java进程的内存映射或堆内存(Heap Dump文件)细节。(如:产生哪些对象,以及数量等)。主要是用在检查内存泄漏、一些严重影响性能的大对象,检查系统中什么对象创建的最多,分析各种对象所占用的大小等。

2021-07-28 13:02:42 138

原创 JVM-jstat常用命令

jstat命令可以查看堆内存各部分的使用量,以及加载类的数量。命令的格式如下:使用的jdk版本是jdk8. 类加载统计: Loaded:加载class的数量 Bytes:所占用空间大小 Unloaded:未加载数量 Bytes:未加载占用空间 Time:时间 编译统计 Compiled:编译数量。 Failed:失败数量 Invalid:不可用数量 Time:时间 FailedType:失败类型 FailedMethod:失败的方法 垃圾回收统计...

2021-07-24 16:22:24 153

原创 mysql系列-dump备份与导出

mysql备份或者导出表结构与数据

2021-07-15 09:46:43 4551

转载 ZSTD 解压缩方式的时间与设置的非压缩的原数据大小有关

ZSTD 解压缩方式的时间与设置的非压缩的原数据大小有关小文件:KB级别,执行1000次 普通文件:kb级别,执行100次 大文件:4M+,执行10次 ZSTD:解压缩分配空间等于压缩后的大小*5

2021-06-17 09:04:54 505

空空如也

空空如也

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

TA关注的人

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