自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 关于ThreadPoolExecutor使用SynchronousQueue的运行细节

因此情况应该是,插入任务2的时候由于线程池无空闲没有进行消费,offer返回false,于是执行addWorker方式提交任务(而没有经过队列),插入任务3的时候由于线程无空闲没有进行消费,offer返回false,并且addWorker也失败(因为达到了最大线程数),因此执行拒绝策略。有一个场景,核心线程数1,最大线程数2,使用SynchronousQueue,先后提交3个任务。称任务i为第i个提交的任务。

2024-07-14 16:32:11 379

原创 Spring Bean初始化流程

首先:然后对于每个Bean:主要流程来自StackOverflow一个问题,提问者发出的几张图片:具体的调用顺序来自:

2024-02-22 11:18:38 398 1

原创 MySQL中UPDATE语句存在意料之外的返回affected rows为0的情况,所以返回值也很重要!

根据测试,这种情况下丢失的Update语句会返回affected rows为0(即使重新Select可以看到满足Update条件的数据行数不为0)。

2023-11-02 21:50:35 1757

原创 MySQL5.7从JSON数组提取行的办法

MySQL 5.7 引入了原生JSON支持,但是对于MySQL一直以来缺少的不定数量列转行的能力还是没有得到满足。MySQL8.0引入了如JSON_TABLE()等函数支持JSON数组转行,但是在5.7中只能通过比较曲折的办法实现(即无法通过纯SQL实现)根据最大长度(使用UNION ALL)构造一个序号表,这一步需要借助代码拼接SQL(比如MyBatis框架可以使用。如果数量不确定则需要先实时计算出来(注意性能损耗)。如果最大序号比较固定,可以直接创建一个永久表保存序号提高效率。

2023-10-31 18:00:11 1071 1

原创 解决 MySQL5.7 UUID()返回相同字符串的问题

返回两个看着很像,但实际上有一点点差别的UUID。以下SQL返回两个UUID。

2023-09-14 22:21:01 696 1

原创 Java堆外内存管理和OOM-Killer

我层遇到过一个问题,在Docker中限制容器以1G内存运行Spring项目,将堆空间调整为800MB,项目启动失败,检查日志发现没有输出,检查系统日志时才发现触发了OOMKiller。原因可能是堆外空间不足,将堆空间调整为600MB,项目正常启动。由于这个问题涉及到的知识比较多,同时资料也相对比较零散,这里将查到的相关知识汇总在一起方便查看。

2023-09-10 17:14:34 402 1

原创 virtualBox centOS 7配置桥接模式成功经验

换成网卡的IP地址和子网前缀长度,一般是24)。参考:https://access.redhat.com/solutions/7002283。如果等很久然后失败,根据提示检查系统日志。则退出来执行命令启用网卡的ipv4(esc、:wq 保存。

2023-09-09 13:30:11 871

原创 高性能MySQL(第四版)读书笔记(自用)

仅记录个人知识盲区和个人认为有用的内容,从“Schema设计”这一章往后才开始仔细记录了笔记,因此之前的内容比较零散。由于阅读时间有限,跳过了部分章节(“备份与恢复”、“云上的MySQL”、“MySQL合规性”)

2023-08-14 09:48:46 150

原创 我对面向对象的理解

SmallTalk之父对面向对象的理解:一个个微型电脑,它们之间相互发送消息。一般又认为,方法调用是发送消息的一种形式。这些关于面向对象的讨论只谈论对象的行为,不解释对象的创建和销毁(销毁在Java里大多不用自己处理),但要讨论实际的设计,又得关注三个方面:创建、结构、行为(这是我总结的,分别对应三类设计模式)。“一个个微型电脑”,其实这个比喻隐含了这些对象是比较稳定的东西的意思,但很多对象是比另一些对象更昙花一现的,比如Request对象之于Handler一样。于是我倾向于这样理解:在面向对象程

2021-04-16 12:05:02 72

原创 SQL子句执行顺序及Having的误用

(部分)子句执行顺序:from->where筛选->group by分组(默认分一组)->对分组执行聚集函数->having筛选->select->order by->limit误用:leetcode 剑指offer176:第二高的薪水我的题解(错误答案):select Salary as SecondHighestSalaryfrom Employeehaving Salary < max(Salary)order by Sa

2021-03-31 16:08:09 122

原创 记一个Spring代理public变量的问题

前天遇到一个很奇怪的问题,在Service的PostConstruct里修改了公有成员变量的值,但获取的时候还是初始值。服务类定义大概是这样的:@Service@Slf4jpublic class PaymentService{ public int payDurationSec; @PostConstruct public void init(){ log.info("初始化前值:{}", payDurationSec); payDurationSec = 900; log.

2021-02-06 18:34:17 229

空空如也

空空如也

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

TA关注的人

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