3分钟带你秒懂对象的内存分配流程

01、背景介绍
在之前的文章中,我们介绍了类加载的过程、JVM 内存布局和对象的创建过程相关的知识。
本篇综合之前的知识,重点介绍一下对象的内存分配流程。
0…

【技术探秘】深度解析对象在 JVM 中的创建过程!

01、背景介绍
在之前的文章中,我们介绍了类加载的过程和 JVM 内存布局相关的知识。本篇我们综合之前的知识,结合代码一起推演一下对象的真实创建过程,以及对象…

【技术探秘】一文读懂类的加载过程及双亲委派设计

01、背景介绍
我们知道 Java 是先通过编译器将.java类文件转成.class字节码文件,然后再通过虚拟机将.class字节码文件加载到内存中来实现应用…

整理常见的网站在线人数统计方案

在日常的网站运营中,需要实时统计某个网站的在线人数,通过该指标来帮助运营人员更好地维护网站业务。下面就这个问题做一些实现方案的罗列。
1、监听session方式…

【技术探秘】图解 JVM 内存模型,超硬核!

01、背景介绍
熟悉 Java 语言特性的同学都知道,相比 C、C++ 等编程语言,Java 无需通过手动方式回收内存,内存中所有的对象都可以交给 Java …

神奇的SpringBoot事务钩子函数

在Spring Boot中提供了@Transactional注解来声明一个方法需要在事务环境中运行。当这个方法被调用时,Spring会自动开启一个事务,并在方法…

深入java 分析 volatile 关键字的用法和实现原理,硬核干货!

01、背景介绍
在上篇浅析 synchronized 的用法文章中,我们介绍到在多线程环境下,如果编程不当,可能会出现程序运行结果混乱的问题。
出现这个原因主…

为什么大家都说 ThreadLocal 存在内存泄漏的风险?

01、背景介绍
在 Java web 项目中,想必很多的同学对ThreadLocal这个类并不陌生,它最常用的应用场景就是用来做对象的跨层传递,避免多次传递,…

浅谈 Synchronized 的几种用法,超多干货!

01、背景介绍
说到并发编程,总绕不开线程安全的问题。
实际上,在多线程环境中,难免会出现多个线程对一个对象的实例变量进行同时访问和操作,如果编程处理不当,会…

深入剖析 RabbitMQ

01、关于 RabbitMQ
说到 RabbitMQ,相信大家都不会陌生,微服务开发中必不可少的中间件。

在上篇一文快速入门消息队列的文章中,我们了解到 R…

太优雅了,责任链模式在项目中的实战应用

现实生活中铁链,它由一个个铁环首尾相接构成一条完成的链子,如下图所示:

类比到责任链模式中,铁链中的每个节点可以看成责任链模式中的每个对象,然后每个对象负责处…

3分钟讲透死锁!

01、背景介绍
什么是死锁?它有什么危害?
带着这个问题,今天通过这篇文章,我们一起来深入了解一下死锁原理和解决办法。
我们知道被synchronized修饰…

SpringBoot中如何创建一个自定义的starter

在springboot中,我们经常可以看到一些如xxx-starter-xxx的maven坐标,典型是spring-boot-starter-web。Sprin…

SpringBoot 整合 apache fileupload 轻松实现文件上传与下载(通用版)

01、背景介绍
在上篇文章中,我们介绍在 Spring Boot 中利用 MultipartFile 对象实现文件上传的案例。
其实在 Java Web 项目…

SpringBoot 整合 MultipartFile 轻松实现文件上传与下载

01、背景介绍
文件上传与下载是 Web 系统中最常见的应用功能,比如用户头像的上传、Excel 文件的导入和导出等。
今天通过这篇文章,我们一起来学习一下如…

推荐几款常用的 JVM 调优工具,最后一个特别好用!

对于绝大部分开发者而言,都希望有一个可视化的界面来展示当前服务的性能指标,当需要的时候,直接将线上服务的 dump 文件导出,然后导入到相关工具中通过界面来查询…

Long 类型数据回传给前端,从17位开始居然都是0?

01、问题描述
最近在改造业务系统的时候,发现了一个巨坑,前端 JS 在获取后端 Long 型参数时,出现精度丢失!
起初,用 postman 模拟接口请求,…

SpringBoot整合Redis实现数据分布式缓存,实战分享!

01、背景介绍
在当前流行的微服务以及分布式集群环境下,Redis 的使用场景可以说非常的广泛,能解决集群环境下系统中遇到的不少技术问题,在此列举几个使用 r…

一文吃透常用的 JVM 调优命令!

01、背景介绍
虽然目前市场上有很多成熟的 JVM 可视化监控分析工具,但是所有的工具其实都依赖于 JDK 的接口和底层相关的命令,了解这些命令的使用对于我们…

3分钟带你看懂 GC 日志!

01、背景介绍
如何分析当前虚拟机性能呢?其中 GC 日志起到至关重要的作用。
实际上,每种垃圾收集器都有它独立的日志格式,尽管如此,虚拟机为了方便用户阅读,…