background picture of the home page

mifuRD

山高路远,止不住行者征程。

微信:mifuCN | 电话:15761226890
最近在学习AI应用开发的相关知识(LangChain、Spring AI Alibaba等框架),先在个人博客中落地一些功能试试效果。顺便抽空看看《深入理解Java虚拟机》。

CompletableFuture 实现多线程异步编排

CompletableFuture 实现多线程异步编排 一 :问题背景 问题:当查询接口较复杂时候,数据的获取都需要 [远程调用],必然需要花费更多的时间。 假如查询文章详情页面,需要如下标注的时间才能完成,比如如下场景: 1. 查询文章详情 0.5s 2. 查询文章博主个人信息 0.5s 3. 查

thumbnail of the cover of the post

死锁的查看方式

好的,这是为您生成的文章摘要: 本文主要介绍了两种常见的死锁问题排查方法:代码层面死锁与数据库SQL死锁。对于代码层面的死锁,可以通过Java的`jstack`命令来分析线程堆栈,该命令能明确指出发生死锁的线程信息。当多线程操作数据库导致死锁时,则需转向数据库层面进行排查。 针对数据库SQL死锁,文章提供了一套排查步骤:首先,通过`show OPEN TABLES`和`show processlist`命令,可初步判断是否有表被锁定并查看当前活跃进程。随后,通过查询`INFORMATION_SCHEMA`中的`INNODB_LOCKS`和`INNODB_LOCK_WAITS`系统表,可以进一步详细分析当前持有锁和正在等待锁的事务,从而精准定位死锁源头。 ——由米芾AI生成,内容仅供参考!

thumbnail of the cover of the post

SQL语法记录

coalesce 返回第一个非null的值 需求:计算各个门店的超时订单,若订单存在预约时间,超时已超过预约时间2小时来算;若订单没有预约时间,则以订单创建时间超过2小时来算; select a.name as storename,count(b.id) as ordernum

thumbnail of the cover of the post

git误删本地提交记录

我们在 git 使用的过程当中,经常会遇到各种情况。下面这种情况,就是我在实际操作的时候,遇到的一个场景: 我在 本地仓库当中, 提交过一份代码,但是代码还没有上传到网络远程仓库。 现在,我自己不小心删除了之前提交的本地仓库记录, 可是眼下这个 本地提交的记录,我还是很需要的,这种情况下应该怎么处理

thumbnail of the cover of the post

jvm复习

本文介绍了Java虚拟机(JVM)的核心概念。JVM运行在操作系统之上,其主要内存区域包括:存放对象实例的**堆**、管理Java方法执行的**虚拟机栈**、存储类元数据的**方法区**(Java 8后为元空间),以及程序计数器等。类加载采用**双亲委派模型**,以保证类的唯一性和安全性。 堆是垃圾回收(GC)的主要区域,分为新生代和老年代。新生代采用**复制算法**进行频繁的Minor GC,存活对象经多次回收后进入老年代。老年代空间满时触发Full GC,通常采用**标记-清除**或**标记-整理**算法。文章还解释了`StackOverflowError`(栈溢出)和`OutOfMemoryError`(堆内存溢出)等常见问题,并提及了Java 8中用元空间替代永久代的重要更新。 由米芾AI生成,内容仅供参考!

thumbnail of the cover of the post