
并发编程中的 ABA问题是什么?如何解决?
在并发编程中,ABA问题是一个常见的问题,尤其是在使用乐观锁或无锁算法时,虽然这个问题并不是 Java特有的,但在Java中,当使用与CAS(Compare-A…
Thread.sleep(0)会导致线程睡眠吗?
在作为Java程序员,我们都知道Thread.sleep()是用于线程睡眠,那么,Thread.sleep(0)是做什么用呢?这篇文章,我们就来聊一聊。
1. …
Spring Boot 3.2 尝鲜,开箱即用的虚拟线程和 GraalVM
Spring Boot 3.2 已经发布,让我们用 Java 21、GraalVM 和虚拟线程来尝试一下。
Spring Boot 3.2 支持:
Java …

千万不要把 Request 传递到异步线程里面!有坑!
前几天在网上冲浪的时候看到一篇技术文章,讲的是他把一个 request 请求传递到了线程池里面,然后遇到了一个匪夷所思的情况。
他写了这篇文章,把自己针对这个问…

Java多线程编程-(9)-使用线程池实现线程的复用和一些坑的避免
线程复用:线程池
首先举个例子:
假设这里有一个系统,大概每秒需要处理5万条数据,这5万条数据为一个批次,而这没秒发送的5万条数据数据需要经过两个处理过程,第…

Java多线程编程-(12)-单例模式几种写法的错与对
Java多线程编程-(11)-面试常客ThreadLocal出现OOM内存溢出的场景和原理分析
一、背景知识
在所有的主流23中设计模式中,单例模式作为最简单…

初探性能优化–2个月到4小时的性能提升!
作者:闪客sun | 博客园
https://www.cnblogs.com/flashsun
一直不知道性能优化都要做些什么,从哪方面思考,直到最近接手了一…

支撑瞬间百万QPS的热点文章服务的设计
在我们的日常生活中,总是在一个不经意间就会出现一个大新闻,如某某一线明星出轨、某某明星官宣结婚、某某明星偷税漏税等等。这个都是我们粉丝或者吃瓜群众感兴趣的话题,…

Java 多线程并行计算框架:ForkJoin,实战讲解!
一、摘要
从 JDK 1.7 开始,引入了一种新的 Fork/Join 线程池框架,它可以把一个大任务拆成多个小任务并行执行,最后汇总执行结果。
比如当前要计…
深入解析线程的等待与唤醒机制,硬核干货!
01、背景介绍
在之前的线程文章中,我们介绍了synchronized和volatile关键字,使用它能解决线程同步的问题,但是它们无法解决线程之间协调和通信…
盘点并发编程中几个实用的线程同步技术
01、背景介绍
下面我们一起来了解一下这些常用的并发工具类!
02、常用并发工具类
2.1、CountDownLatch
CountDownLatch是 J…

浅谈ConcurrentHashMap 线程安全的具体实现方式
01、摘要
在之前的集合文章中,我们了解到 HashMap 在多线程环境下操作可能会导致程序死循环的线上故障!
既然在多线程环境下不能使用 HashMap,那…

用户passport 服务Token:如何降低用户身份鉴权的流量压力?
许多网站在初期阶段通常使用 Session 方式来实现用户登录鉴权。具体而言,当用户成功登录后,服务端会将用户的相关信息存储在 Session 缓存 中,并生成…
Java 日志组件@Slf4j 介绍及配置详解
1 基本介绍
每一个Java程序员都知道日志对于任何一个Java应用程序尤其是服务端程序是至关重要的,而很多程序员也已经熟悉各种不同的日志库,如java.uti…