buguge - Keep it simple,stupid

知识就是力量,但更重要的,是运用知识的能力why buguge?

导航

1 2 3 4 5 ··· 23 下一页

#

[置顶] 面试题沟通整理

摘要: int与Integer-基本类型与包装类型的区别、使用场景, 如 数据表对应的实体类中,int类型字段对应的 属性 为什么是Integer? 幂等、防重复提交, 概念与区别。 如何系统全局做 防重复提交? fastjson关于枚举反序列化:当字符串不是枚举常量时,会怎样?请写出来测试代码。 数据的状 阅读全文

posted @ 2026-01-30 00:54 buguge 阅读(20) 评论(0) 推荐(0)

2026年7月21日 #

从 `int` 到 `Duration`:一个缓存 API 的三次演进教会我的事

摘要: 1) 一个让我熬夜排查的 Bug 某天凌晨两点,线上告警:用户 Token 频繁过期,大量请求被踢回登录页。 查了一圈,发现 Redis 里 Token 的 TTL 设置有问题——本该存活 1 小时的 Token,实际只活了 1 分钟。顺着调用链找到罪魁祸首: CacheUtils.set("tok 阅读全文

posted @ 2026-07-21 22:42 buguge 阅读(9) 评论(0) 推荐(0)

2026年7月9日 #

最差实践(bad-practice):开发者在方法里直接实例化线程池对象,然后...(应用gg了)

摘要: 一、问题现场 当需要异步执行一个任务时,开发者随手在方法内部 new 一个线程池: public class AsyncTaskService { public void sendNotification(String message) { // 每次调用都创建全新的线程池 ExecutorServ 阅读全文

posted @ 2026-07-09 22:38 buguge 阅读(4) 评论(0) 推荐(0)

【HttpClient最差实践(bad-practice)】开发者在 http 工具方法中直接实例化 HttpClient,然后……

摘要: 一、问题现场:一段看似“正常”的工具代码 在很多项目的 HTTP 工具类里,你可能会看到这样的写法: public static String doPost(Map<String, String> map, String url) throws HttpTransportException { lo 阅读全文

posted @ 2026-07-09 21:49 buguge 阅读(11) 评论(0) 推荐(0)

2026年7月7日 #

Crypto、Cipher与Password:Java加密开发的三个核心概念

摘要: 引言:三个“密码”,三种含义 在Java安全开发中,有三个极易混淆的术语:Crypto、Cipher和Password。它们的中文翻译都与“密码”有关,但在计算机科学中各自承担着截然不同的角色。 Crypto:密码学的总称,是一个领域或工具箱 Cipher:加密/解密的具体算法或工具 Passwor 阅读全文

posted @ 2026-07-07 21:46 buguge 阅读(27) 评论(0) 推荐(0)

2026年6月21日 #

知识VS技能:如何优雅判空?

摘要: 知道不等于会用,会用才是真本事 在我们的项目中,有一个 EnterpriseSessionContext 工具类,用于管理当前登录企业的 Session 信息。代码很简单: import org.springframework.web.context.request.RequestContextHo 阅读全文

posted @ 2026-06-21 18:45 buguge 阅读(17) 评论(0) 推荐(0)

2026年6月5日 #

20260604SR超时问题排查

摘要: 故障说明: 2026-06-04 09:40 ~ 2026-06-02 10:20 期间,运营后台系统的用户数据查询明显变慢,甚至超时。由大数据StarRocks集群压力过大引发。 导致原因分析(磁盘、网络、实现方式、数据量、使用量) 基于 SR的审计日志 查询比平时增加,导致内存稳定在 85%左右 阅读全文

posted @ 2026-06-05 18:55 buguge 阅读(17) 评论(0) 推荐(0)

2026年5月27日 #

推敲见文章:从 `try..catch` 看异常日志打印的正确姿势

摘要: 一、一个常见的异常处理场景 在 Java 开发中,异常处理和日志记录是基础但容易出错的环节。最近在一次代码评审中,发现了下面这段典型的异常处理代码(其中的BizException是一个自定义异常): try { // 业务逻辑:上传身份证图片 // ... } catch (Exception e) 阅读全文

posted @ 2026-05-27 22:56 buguge 阅读(27) 评论(0) 推荐(0)

2026年5月14日 #

#解决问题要彻底# 慢SQL治理完成后,如何防止同类问题“死灰复燃”?

摘要: 一、 问题现场:一个触发全表扫描的“企业名称”查询 今天巡检系统时,发现一条耗时超过15s的慢SQL: select count(*) as orderNum, sum(amount) as totalAmt, sum(case when order_status = 'SUCCESS' then 阅读全文

posted @ 2026-05-14 21:30 buguge 阅读(15) 评论(0) 推荐(0)

从合同甲方是荒谬的“JD”谈起:软件开发不应遗忘的“常识”

摘要: 我们构建的系统,终将服务于这个充满规则与常识的现实世界。 阅读全文

posted @ 2026-05-14 10:08 buguge 阅读(28) 评论(0) 推荐(0)

2026年4月26日 #

别留小尾巴/尽快剪掉小尾巴:从一次“ABA”字段重命名,谈谈“解决问题要彻底”

摘要: 一、背景:一次计划周密的“ABA”迁移 最近,团队需要对“API商户密钥配置表” enterprise_api_key 中的 enterprise_id 字段进行重命名,新字段名为 partner_id。为确保迁移过程平稳、不影响线上业务,我们采用了经典的“ABA”策略: 阶段A:保留原字段,增加新 阅读全文

posted @ 2026-04-26 22:22 buguge 阅读(8) 评论(0) 推荐(0)

2026年4月21日 #

常见的OOM错误 ( OutOfMemoryError全类型详解)

摘要: Java heap space GC overhead limit exceeded Metaspace Unable to create new native thread 阅读全文

posted @ 2026-04-21 22:08 buguge 阅读(94) 评论(0) 推荐(0)

2026年4月20日 #

开发者暴露了一个无需授权访问的裸接口,我问:如果有人暴力请求怎么办?

摘要: 如下方法,@UnAuthToken 注解代表无需授权访问。 这个方法逻辑很简单,入参“key”是一个md5串,程序根据这个“key”去redis拿到数据,经过转换后返回。 每次调用这个方法,意味着 ①会调redis ②会记操作日志 /** * 企业首页忘记登录密码通过key获取当前用户名 * * @ 阅读全文

posted @ 2026-04-20 21:50 buguge 阅读(47) 评论(0) 推荐(0)

2026年4月9日 #

【SQL性能优化篇】有了!治理慢SQL“WHERE create_time ORDER BY id”的良药---规避“Using filesort”性能杀手

摘要: 如何将WHERE create_time ORDER BY id的低效查询,优化为极致性能的WHERE id ORDER BY id查询? § 引言:一个经典的性能困境 在开发订单流水、记账流水、操作日志、监控数据等按时间分页查询的应用时,下面这条SQL非常常见,但在数据量增长后极易成为性能瓶颈: 阅读全文

posted @ 2026-04-09 10:19 buguge 阅读(49) 评论(0) 推荐(0)

2026年4月2日 #

高效查询商户日终余额:一个SQL的优化实践

摘要: 知识就是力量,但更重要的是运用知识的能力。 阅读全文

posted @ 2026-04-02 13:00 buguge 阅读(75) 评论(0) 推荐(0)

2026年3月23日 #

Hutool 的 `TimedCache` 到期会自动清理吗? ——————hutool cache的"惰性清理"和"定期清理"

摘要: 在创建 `TimedCache` 后立即调用 `schedulePrune()`,以确保过期数据会被及时清理,避免内存泄漏问题。 阅读全文

posted @ 2026-03-23 21:04 buguge 阅读(69) 评论(0) 推荐(0)

2026年3月16日 #

Fastjson枚举反序列化:当字符串不是枚举常量名时,会发生什么?

摘要: 我们知道,对外暴露的 HTTP RestAPI 接口通常使用 JSON 格式传输数据。服务端接收到数据后,会将 JSON 字符串反序列化为对应的请求实体对象。 我司灵工系统使用的是 Fastjson-1.2.83 作为序列化工具。在一次RestAPI开发过程中,我忽然产生一个好奇:当 VO 属性的类 阅读全文

posted @ 2026-03-16 20:20 buguge 阅读(51) 评论(0) 推荐(0)

fastjson-EnumDeserializer类及源码分析

摘要: 本文以fastjson-1.2.83版本中 EnumDeserializer 类的源码,来解释其工作原理和实现细节。 🎯 类结构概览 EnumDeserializer 是 FastJSON 用于将 JSON 反序列化为枚举类型的核心类。它支持: 通过枚举名称(Enum.name())反序列化 通过 阅读全文

posted @ 2026-03-16 18:32 buguge 阅读(15) 评论(0) 推荐(0)

2026年3月9日 #

随笔20260309:我们都是围城里的人

摘要: 开年第一天,在谈到组织建设和团队管理时,老马跟职场的我们几个TL说,“别总靠个人加班、苦劳,长此以往人会崩的。得想机制动员团队的力量。” 在一些人看来,可能直觉以为领导在打鸡血、在PUA。 而我,也作为一个一线的TL,突然有一种大梦初醒的领悟。 ————原来,我一直都是围城里的人。我经常加班,在办公 阅读全文

posted @ 2026-03-09 21:11 buguge 阅读(7) 评论(0) 推荐(0)

`UnexpectedRollbackException: Transaction rolled back because it has been marked as rollback-only` 异常解析

摘要: ① 编程式事务(TransactionTemplate 或 PlatformTransactionManager) vs 声明式事务(@Transactional 注解)。 ② 声明式事务管理中应慎用setRollbackOnly(),避免UnexpectedRollbackException异常。 阅读全文

posted @ 2026-03-09 20:42 buguge 阅读(45) 评论(0) 推荐(0)

2026年3月5日 #

认识2个单词:goal/target —————— 为什么Maven是 "goal" 而不是 "target"?

摘要: Maven Goal:强调"要完成什么"(声明式);Ant Target:强调"要执行什么"(命令式) 阅读全文

posted @ 2026-03-05 22:04 buguge 阅读(21) 评论(0) 推荐(0)

2026年3月1日 #

聚合系统设计:策略模式(Strategy Pattern)在银行通道对接场景中的应用

摘要: 在银行支付接口对接的复杂场景中,我们通常采用策略模式实现多银行适配。本设计的精妙之处体现在两个核心细节: 首先,在策略上下文的命名上,我们突破传统"Context"或"Dispatcher"的局限,创新性地采用BankPaymentStrategyRoute这一名称。Route后缀精准表达了其路由职 阅读全文

posted @ 2026-03-01 01:21 buguge 阅读(41) 评论(0) 推荐(0)

2026年2月26日 #

这样构建对象,太帅了!—— 阶梯式Builder模式与代码整洁之道

摘要: 当你的代码既能正确运行,又能清晰表达业务意图时,你也许就真正掌握了整洁代码的艺术。 阅读全文

posted @ 2026-02-26 15:09 buguge 阅读(32) 评论(0) 推荐(0)

2026年2月13日 #

注意!字段数据类型不匹配,这个sql会很慢

摘要: 在数据库优化中,我们经常会关注索引的创建、SQL的写法,但有一个隐蔽的“性能杀手”却容易被忽略——字段数据类型与查询值类型不匹配。 一、问题现象:一个“简单”查询的异常性能 我们有一张交易表 plat_order,其中 order_id 字段定义为 VARCHAR(20),并且在该字段上建立了索引 阅读全文

posted @ 2026-02-13 16:14 buguge 阅读(46) 评论(0) 推荐(0)

2026年2月10日 #

还在用ArrayList?用HashSet吧!--性能对比

摘要: 选择正确的数据结构,往往比优化算法更有效。 阅读全文

posted @ 2026-02-10 20:24 buguge 阅读(25) 评论(0) 推荐(0)

2026年2月4日 #

分页查询还在用create_time去做降序?

摘要: 本笔记记录的这个案例非常经典,也在展示一种优化原则:有时,巧妙地利用现有资源,比盲目增加索引更能体现技术深度。 📌 问题定位:一个典型的排序慢SQL 在巡检中发现一条慢查询,其目的是获取签约信息表中最新创建的10条记录: SELECT id, batch_no, order_no, ... -- 阅读全文

posted @ 2026-02-04 23:01 buguge 阅读(37) 评论(0) 推荐(0)

1 2 3 4 5 ··· 23 下一页