线程池没你想的那么简单(续) Posted on 2019-06-06 In 并发 Views: Disqus: 前言前段时间写过一篇《线程池没你想的那么简单》,和大家一起撸了一个基本的线程池,具备: 线程池基本调度功能。 线程池自动扩容缩容。 队列缓存线程。 关闭线程池。 Read more »
年轻人的第一篇博客 Posted on 2019-05-24 In 小技巧 Views: Disqus: 前言写这篇文章的前因是有位读者留言提到了相关的话题,其实在之前有一篇《如何成为一位「不那么差」的程序员》时有简要提到但没有细说;这次就借这个机会好好聊聊这个事情的前因后果。 Read more »
线程池没你想的那么简单 Posted on 2019-05-20 In 并发 Views: Disqus: 前言原以为线程池还挺简单的(平时常用,也分析过原理),这次是想自己动手写一个线程池来更加深入的了解它;但在动手写的过程中落地到细节时发现并没想的那么容易。结合源码对比后确实不得不佩服 Doug Lea 。 我觉得大部分人直接去看 java.util.concurrent.ThreadPoolExecutor 的源码时都是看一个大概,因为其中涉及到了许多细节处理,还有部分 AQS 的内容,所以想要理清楚具体细节并不是那么容易。 Read more »
图床失效了?也许你应该试试这个工具 Posted on 2019-05-08 In 工具 Views: Disqus: 前言经过几个小伙伴的提醒,发现个人博客中的许多图片都裂了无法访问;原因就不多说,既然出现问题就得要解决。 Read more »
『并发包入坑指北』之向大佬汇报任务 Posted on 2019-04-28 Edited on 2019-04-29 In 并发 Views: Disqus: 前言在面试过程中聊到并发相关的内容时,不少面试官都喜欢问这类问题: 当 N 个线程同时完成某项任务时,如何知道他们都已经执行完毕了。 这也是本次讨论的话题之一,所以本篇为『并发包入坑指北』的第二篇;来聊聊常见的并发工具。 Read more »
一次分表踩坑实践的探讨 Posted on 2019-04-16 Edited on 2020-12-21 In 架构 Views: Disqus: 前言之前不少人问我“能否分享一些分库分表相关的实践”,其实不是我不分享,而是真的经验不多🤣;和大部分人一样都是停留在理论阶段。 不过这次多少有些可以说道了。 先谈谈背景,我们生产数据库随着业务发展量也逐渐起来;好几张单表已经突破亿级数据,并且保持每天 200+W 的数据量增加。 而我们有些业务需要进行关联查询、或者是报表统计;在这样的背景下大表的问题更加突出(比如一个查询功能需要跑好几分钟)。 Read more »
『并发包入坑指北』之阻塞队列 Posted on 2019-04-09 Edited on 2019-05-08 In 并发 Views: Disqus: 前言较长一段时间以来我都发现不少开发者对 jdk 中的 J.U.C(java.util.concurrent)也就是 Java 并发包的使用甚少,更别谈对它的理解了;但这却也是我们进阶的必备关卡。 之前或多或少也分享过相关内容,但都不成体系;于是便想整理一套与并发包相关的系列文章。 其中的内容主要包含以下几个部分: 根据定义自己实现一个并发工具。 JDK 的标准实现。 实践案例。 Read more »
VLOG-007:一个程序员的周末(中) Posted on 2019-03-30 Edited on 2019-04-29 In VLOG Views: Disqus: 承接上期《VLOG-006:一个程序员的周末(上)》 本次是周末日常的中篇,也是我每周做的最频繁的一件事情【陪女朋友逛街】。 Read more »
线程池中你不容错过的一些细节 Posted on 2019-03-26 Edited on 2019-05-08 In 问题排查 , Java 进阶 Views: Disqus: 背景上周分享了一篇《一个线程罢工的诡异事件》,最近也在公司内部分享了这个案例。 无独有偶,在内部分享的时候也有小伙伴问了之前分享时所提出的一类问题: Read more »