千万不要把 Request 传递到异步线程里面!有坑!
前几天在网上冲浪的时候看到一篇技术文章,讲的是他把一个 request 请求传递到了线程池里面,然后遇到了一个匪夷所思的情况。
他写了这篇文章,把自己针对这个问…
Java异常处理和最佳实践(含案例分析)
如何处理Java异常?作者查看了一些异常处理的规范,对 Java 异常处理机制有更深入的了解,并将自己的学习内容记录下来,希望对有同样困惑的同学提供一些帮助。…
原理+配置+实战,Canal一套带走
哈喽大家好,我是阿Q!
前几天在网上冲浪的时候发现了一个比较成熟的开源中间件——Canal。在了解了它的工作原理和使用场景后,顿时产生了浓厚的兴趣。今天,就让我…
图解JVM内存模型及JAVA程序运行原理
本文主要介绍了JVM内存模型及JAVA程序运行原理。
一、JAVA语言的特点
在进入正题之前,先问一个老生常谈的问题,相较于C,JAVA语言的优势是什么?相信…
Java中如何获得A<T>泛型中T的运行时类型及原理探究
本文从Java的泛型开始,研究反射针对泛型的扩展,类型擦除的影响。然后通过生成匿名类实例的小技巧,获得了泛型的运行时类型的技巧。(后台回复【Java单元测试实…
值得收藏!如何快速画出一幅漂亮的架构图
这篇文章总结了常用的架构图类型,可以借鉴笔者提供的模板,快速地产出符合业务需要的架构图。
为什么要画好一幅架构图?一幅漂亮的架构图既是创作者的深度结构化思考和…
IDEA中如何开启Java的远程调试
实际的开发中,有些问题只会发生在预发环境(或生产环境)而本地开发环境可能没办法重现。如果碰到这种情况,此时定位问题原因很可能是一个非常耗费时间且低效的过程,那么…
一文吃透 JVM 对代码的几种优化手段!
01、背景介绍
在之前的文章中我们谈到过,相比 C/C++ 语言,Java 语言在运行效率方面要稍逊一些,因为 Java 应用程序是在虚拟机上运行,而 C/C…
【技术探秘】Java虚拟机:从萌芽到辉煌的传奇历程
众所周知,Java 经过多年的发展,已经从一门单纯的计算机编程语言,发展成了一套成熟的软件解决方案。从互联网到企业平台,Java 是目前使用最广泛的编程语言。
…
如何在 Spring Boot 中实现优雅停机?
大家好,我是志哥,今天推荐一个特别实用的 Spring Boot 技术特性,它就是“如何实现服务优雅停机?”,下面我们一起来看看具体技术实践!
01、故事背景 …
3分钟秒懂 JVM 中垃圾对象的回收算法!
01、背景介绍
在之前的文章中,我们介绍了 JVM 内部布局、对象的创建过程以及运行期的相关优化手段。
今天通过这篇文章,我们一起来了解一下对象回收的判定方式…
手把手带你开发一套用户权限系统,精确到按钮级
在实际的软件项目开发过程中,用户权限控制可以说是所有运营系统中必不可少的一个重点功能,根据业务的复杂度,设计的时候可深可浅,但无论怎么变化,设计的思路基本都是围…
as-if-serial语义和happens-before原则
1、重排序
为了提高程序的执行性能,编译器(如JVM在编译Java代码)和处理器(如CPU在执行JVM字节码)常常会对指令做成重排序。
在Java中重排序有以下…
手撕一个简易版的SpringMVC框架,yyds!
在商业网站开发中,Spring MVC 可以说是目前最流行的框架,之所以如此的流行,原因很简单:编程简洁、上手简单!
记得刚开始入行的时候,最先接触到的是Str…
深入解析线程的等待与唤醒机制,硬核干货!
01、背景介绍
在之前的线程文章中,我们介绍了synchronized和volatile关键字,使用它能解决线程同步的问题,但是它们无法解决线程之间协调和通信…