2026年9月10日

SQL优化案例

摘要: 现有订单表orders,包含字段:order_id(主键)、user_id、product_id、amount、status、create_time。请写出以下查询的SQL: (1)查询最近7天内,每个用户的总下单金额,按金额降序排列。 (2)针对该查询,建议建立什么索引并说明理由。 SELECT 阅读全文

posted @ 2026-09-10 09:35 幽州散人 阅读(10) 评论(0) 推荐(0)

2026年9月7日

synchronized 为啥会让虚拟线程卸载失效

摘要: 虚拟线程底层如何复用载体线程 虚拟线程实际上是一种封装,把runnable任务封装交给载体线程干活。但向上对程序员提供一套线程api,让程序员像以往使用传统线程一样去使用。我们知道虚拟线程在底层复用载体线程干活,如果发生阻塞则执行代码(底层实际就是载体线程在执行)调用native方法,jvm就会把虚 阅读全文

posted @ 2026-09-07 14:24 幽州散人 阅读(11) 评论(0) 推荐(0)

2026年9月6日

主线任务和使命

摘要: 我是谁,我来到世上的使命是什么。 这可能是普通人一生的课题,因为大部分人一生未必能回答得了。 可能就是所谓的NPC吧,没有什么使命,主线任务就是活下去而已。纵观人类历史,其实多数情况大部分人能活着就不错了,如果完成了生物学上的繁衍,那算是加分了,也算是完成了种群的贡献。 少数幸运的人会找到自己的使命 阅读全文

posted @ 2026-09-06 09:39 幽州散人 阅读(10) 评论(0) 推荐(0)

2026年9月4日

温州3日之旅

摘要: 26年初秋9月,天气还是有些热,台风天不凑巧,公司原计划去的景区都没开,变成了自由行,我租了一辆领跑b01自己安排跟老婆的行程。 btw:对于没开过电车的我,这车确实加速快、体验非常好,市区走走停停是神器,高速也不虚,但充电确实也是个大问题,猛开电下的很快。 外形内饰方面,可能我比较喜欢老派车子,有 阅读全文

posted @ 2026-09-04 19:26 幽州散人 阅读(17) 评论(0) 推荐(0)

2026年9月1日

CompletableFuture + 异步Servlet:同步的姿势、异步的效果

摘要: 这是一个务实但有效的工具。 假设在Servlet线程模型下的web容器,比如SpringBoot web starter下, 要处理一个慢接口,一般是文件操作、公网第三方接口调用等等,除了提高业务逻辑处理速度提高RT之外, 能做的防守动作是至少不要让这个慢接口拖垮Tomcat的worker线程池。 阅读全文

posted @ 2026-09-01 16:06 幽州散人 阅读(9) 评论(0) 推荐(0)

2026年8月28日

Snowflake雪花算法与发号器的应用

摘要: 雪花算法、发号器及其应用场景 Snowflake雪花算法是一种全局ID生成方案,比如分库分表场景下,不能用自增主键了,全局会重复,就需要用全局ID方案作为分库分表下的唯一标识,可以认为是唯一业务标识,因为自增主键这时候分表了已经都是重复的了。这时候业务应用需要向发号器(用来生成全局ID的独立应用或集 阅读全文

posted @ 2026-08-28 14:20 幽州散人 阅读(31) 评论(0) 推荐(0)

2026年8月24日

windows Java 幽灵转发壳进程

摘要: 标题党了有点。但是之前没注意的一个小现象。 本地java -jar .\j21web-1.0.0-SNAPSHOT.jar起了一个java进程,然后ps ps | findstr java 144 10 1884 10764 0.16 10216 1 java 503 35 237016 18845 阅读全文

posted @ 2026-08-24 11:12 幽州散人 阅读(14) 评论(0) 推荐(0)

2026年8月19日

也谈MySQL limit offset深翻页问题

摘要: 深翻页问题 一页10条记录,翻第1页和第50000页的区别 -- 步骤1:浅分页(第1页) → 很快 EXPLAIN SELECT * FROM orders ORDER BY id LIMIT 10 OFFSET 0; -- 或 LIMIT 0, 10 id|select_type|table | 阅读全文

posted @ 2026-08-19 14:27 幽州散人 阅读(15) 评论(0) 推荐(0)

2026年8月14日

SHOW SESSION STATUS 与 Handler 变量

摘要: 会话级内存计数变量SESSION STATUS 中,'Handler%'开头的这一组变量、反映了存储引擎取数的一些细节,可以用来分析SQL性能。 FLUSH STATUS; select count(*) from order_items oi ; SHOW SESSION STATUS LIKE 阅读全文

posted @ 2026-08-14 16:00 幽州散人 阅读(17) 评论(0) 推荐(0)

MySQL 5.7 Profiles 执行性能分析

摘要: 注意:profiles从8.0废弃,官方推荐使用 performance_schema 我们可以通过开启SET profiling = 1,来精调分析1条SQL执行过程中各个阶段的详细耗时,以及CPU、IO等花费。 -- 开启 (会话级) SET profiling = 1; -- 执行几个查询 s 阅读全文

posted @ 2026-08-14 15:36 幽州散人 阅读(14) 评论(0) 推荐(0)

导航