🌱

328

一杯咖啡的时间,聊聊技术与成长

连载中 4/21

synchronized(下):锁升级之路与 wait/notify 两条铁律

无锁、偏向、轻量级、重量级的自动升级链(含 JDK 15 废弃偏向锁的真相);wait 必须在 synchronized 里、等待条件必须写 while——两条铁律背后的道理。

#Java#synchronized#锁升级#wait-notify#JUC
2026-10-24 · 82 阅读 · 0 评论 · 0 赞
连载中 3/21

synchronized(上):它锁的不是代码,是对象

三种用法锁三个不同的对象,混用就是三个互不干扰的队列。javap 反编译看 monitorenter 与 ACC_SYNCHRONIZED,以及 Mark Word 里藏着的锁状态。

#Java#synchronized#锁#JUC#并发编程
2026-10-24 · 72 阅读 · 0 评论 · 0 赞
连载中 2/21

线程的六种状态:start 和 run 根本不是一回事

t.run() 不是开线程,只是普通方法调用;Java 线程没有 RUNNING 状态;阻塞 I/O 在 jstack 里照样显示 RUNNABLE——三个反直觉,一篇讲透线程生命周期。

#Java#线程#线程状态#JUC#并发编程
2026-10-23 · 73 阅读 · 0 评论 · 0 赞
连载中 1/21

并发开篇:一行 i++,库存超卖 100 件

秒杀三分钟,1000 件库存卖出 1100 件,复盘发现罪魁祸首是一行 stock--。并发第一课:你以为的一行代码,CPU 要分三步走,线程随时插队。

#Java#并发编程#线程安全#JUC#系列开篇
2026-10-23 · 79 阅读 · 0 评论 · 0 赞
连载中 20/20

Linux 收官:一张排障手册与持续精进路线

20 篇到此收官。本篇不教新命令,把全系列的命令串成五大事故场景的标准动作——CPU 飙高、内存告急、磁盘写满、服务起不来、网络不通,一张清单带走,附一条持续精进路线。

#Linux收官#排障手册#速查表#学习路线#系列总结
2026-10-22 · 67 阅读 · 0 评论 · 0 赞

PHP2Shell 漏洞自查手册:升级之后,怎么确认漏洞真的没了

两个 CVSS 9.2 的 PHP 引擎级 RCE(CVE-2026-109618/109619)补丁昨晚已发布。本文交叉 PHP 官方与宝塔面板公告,给出官方与宝塔修复版本对照表、面板与命令行两种升级方法、临时缓解措施与两个无用误区,并重点给出升级后的六步验证清单:CLI 与 FPM 双入口版本核对、changelog 查 CVE 编号、phpinfo 临时页裁决配置生效、进程时间戳确认重启、检测插件为何不可信,以及功能回归。

#PHP#安全#CVE#运维
2026-10-22 · 55 阅读 · 0 评论 · 0 赞
连载中 19/20

性能观测四件套:top、free、iostat、ss 联动读数

性能排查不是背命令,是读仪表盘:top 看 CPU 谁在吃、free 看内存还剩多少、iostat 看磁盘忙不忙、ss 看连接堵不堵。四块表联动,才能读出真正的瓶颈。

#性能观测#top#free#iostat#ss
2026-10-22 · 48 阅读 · 0 评论 · 0 赞
连载中 18/20

日志分析:journalctl、logrotate 与三步找线索

日志是服务器留给你的唯一口供。本篇讲三件事:systemd 服务的日志怎么翻、logrotate 怎么配才不会撑爆磁盘、一次线上报错的三步定位法。

#日志分析#journalctl#logrotate#排错#traceId
2026-10-21 · 49 阅读 · 0 评论 · 0 赞
连载中 17/20

crontab:定时任务怎么写,以及为什么它总不跑

五段式语法十分钟就能背会,但 cron 的三大暗坑——环境变量被重置、输出被静默吞掉、-r 一键全删——才是「我的定时任务为什么没跑」的真正答案。

#crontab#定时任务#cron#运维#自动化
2026-10-21 · 39 阅读 · 0 评论 · 0 赞