- 博客(269)
- 资源 (3)
- 收藏
- 关注
原创 深入Linux内核:VFS与文件系统的底层逻辑剖析
本文围绕 Linux 内核中虚拟文件系统(VFS)与文件系统的底层逻辑展开,先介绍 Linux 文件系统的基础目录结构与核心分类,阐述 VFS 作为 “统一翻译官” 的承上启下作用。重点剖析 VFS 的四大核心数据结构、三组核心接口,详解文件系统的注册与挂载流程,以 read () 操作为例精简解析文件操作全流程。最终总结 VFS 通过抽象封装屏蔽底层差异、实现多文件系统共存的核心价值,以及其体现的 Linux 内核分层协同设计思想,为开发者理解 “一切皆文件” 理念提供关键参考。
2026-03-23 13:52:27
496
原创 全网最全 Mermaid 指南:从基础语法到精美自定义样式的终极实战
Mermaid是一款基于JavaScript的开源图表工具,通过纯文本语法快速生成可视化图表。相比传统绘图工具,它具有四大优势:1)文档即代码,支持版本控制;2)自动布局,无需手动调整;3)无水印高清导出;4)语法简洁易上手。文章详细介绍了Mermaid支持的5种核心图表语法:饼图展示比例关系、流程图梳理逻辑步骤、时序图呈现交互过程、状态图描述状态转换、甘特图规划项目进度,每种图表都配有实例代码和渲染效果展示。Mermaid已成为程序员、产品经理等高效绘图的首选工具。
2026-01-23 11:16:48
2566
原创 大厂标配!Mockito 在 SpringBoot 单元测试中的落地实践
本文介绍了Mockito在SpringBoot单元测试中的核心应用。作为Java领域主流测试框架,Mockito通过模拟对象隔离外部依赖,解决传统测试中环境依赖、执行速度慢、边界场景难覆盖等痛点。文章以用户注册服务为例,详细讲解了Mockito与SpringBoot Test的集成使用,包括@MockBean注解、模拟对象行为定义、测试验证等核心步骤。通过Mockito可实现快速、稳定、全面的单元测试,使测试用例聚焦业务逻辑,提升测试效率和质量保障能力。
2025-12-21 13:59:31
936
原创 三大设计范式:TDD 筑基,DDD 破局,六边形架构解耦
程序员成长过程中需要掌握三大核心设计范式:测试驱动开发(TDD)通过"红-绿-重构"循环确保代码可靠性;领域驱动设计(DDD)将设计思路从技术导向转为业务导向,通过统一语言、领域模型等使代码贴合业务;六边形架构则通过端口-适配器模式解耦核心业务与外部依赖,使系统更具灵活性。这三种范式分别解决了微观代码可靠性、复杂业务模块化设计以及业务与技术彻底解耦的问题,形成层层递进的设计进阶之路。
2025-12-21 11:18:54
1247
原创 高并发下的 Redis 优化:如何利用HeavyKeeper快速定位热 key
本文聚焦高并发场景下Redis热key问题,剖析其引发节点过载、缓存雪崩的危害,指出Redis Monitor命令无法满足生产环境识别需求。核心方案为本地缓存+TopK筛选,但传统算法不适配流式场景。文章引入流式TopK最优解HeavyKeeper算法,阐述其“多层哈希表+指数衰减+最小堆”架构与“保大压小”逻辑,区分其与布隆过滤器的定位差异。详解RedisTopK模块安装与实操,提供热key识别、本地缓存联动的落地流程,为Redis热key治理提供完整方案。
2025-12-21 00:00:11
1118
原创 从 0 到 1 优化 Java 系统:方法论 + 工具 + 案例全解析
本文系统阐述了性能优化的方法论与实践路径。首先强调性能优化已成为工程师必备技能,并指出当前普遍存在的粗放式优化问题。文章提出性能优化应以量化指标为前提,包括吞吐量、响应时间等关键维度。在技术优化层面,重点分析了复用优化(缓冲与缓存)、计算优化(并行与异步)、结果集优化、资源冲突优化等六大切入点。同时深入探讨了系统资源瓶颈的识别方法,指出CPU、内存和I/O之间相互制约的复杂关系。全文强调性能优化不是单一指标提升,而是多维平衡的艺术,需要建立系统性认知框架。
2025-12-20 17:01:40
1294
原创 强化学习不只会打游戏:CPU 调频场景的落地思考与收获
本文从强化学习的三层核心结构(基础交互元素、动态运行元素、核心决策元素)切入,梳理其从游戏、棋牌博弈等经典场景到自动驾驶等工业场景的应用延伸。重点分享强化学习在 CPU 动态调频(DVFS)问题中的落地实践,阐述如何将该问题建模为序列决策任务,通过智能体与系统环境的交互实现性能与功耗的动态平衡,展现强化学习从 “娱乐验证” 到 “工业赋能” 的跨界价值。
2025-12-20 12:48:12
754
原创 30分钟搭建专业排版环境!VSCode+TeX Live 2025 保姆级教程
LaTeX是学术界的排版神器,通过代码指令实现专业文档的自动排版,尤其适合处理复杂公式和长文档结构。相比在线工具Overleaf,本地搭建VSCode+LaTeX环境具有离线可用、编译速度快、隐私安全、高度自定义等优势。搭建步骤包括:安装TeX Live核心、配置VSCode编辑器及LaTeX Workshop插件。本地环境支持高效写作,尤其适合论文、技术报告等专业文档的长期创作。
2025-10-17 22:10:27
12716
3
原创 Prometheus+Grafana轻松实现SpringBoot应用监控
首先在Spring Boot中集成Actuator和Micrometer,暴露Prometheus格式的监控端点;然后通过Docker部署Prometheus,配置拉取应用指标;最后部署Grafana并连接Prometheus数据源,实现可视化监控。该方案可全面监控应用健康度、JVM资源、HTTP请求等核心指标,帮助开发者快速定位性能问题,提升系统可靠性。整个流程包括端点配置、数据转换、服务部署和仪表盘展示,形成完整的监控闭环。
2025-10-02 09:37:16
1264
原创 Linux 性能瓶颈排查思路
本文介绍了Linux系统性能瓶颈的系统化排查思路,包括整体负载、CPU、内存、磁盘I/O、网络和应用层六个维度的分析方法。通过uptime、top、free、iostat、iftop等命令工具,可以快速定位性能问题根源。排查应遵循自上而下的流程:先看系统负载,再逐层检查硬件资源,最后排查应用层。掌握这套方法能有效避免盲目扩容,精准解决响应慢、吞吐下降等问题。
2025-09-23 17:28:32
1079
2
原创 Prompt工程实战指南:让你的大模型言听计从
Prompt工程(Prompt Engineering)是优化AI交互的关键技能,通过精准设计提示词引导大语言模型输出更符合需求的结果。其核心在于角色设定(如“资深程序员”)、明确任务(如代码解析)和上下文补充(如格式要求)。技巧包括使用界定符分隔指令、占位符填充变量、角色扮演控制风格,以及分步推理(COT)提升复杂任务准确性。Prompt本质是激活模型特定注意力路径的“语言触发器”,通过调整概率分布实现精准输出,具备零训练、高复用优势,是高效利用AI的核心方法论。(149字)
2025-07-25 17:30:48
1575
原创 突破 MySQL 性能瓶颈:死锁分析 + 慢查询诊断 + 海量数据比对实战
本文深入探讨MySQL性能优化中的关键问题与解决方案。首先从锁机制入手,分析表级锁、行级锁、间隙锁等不同类型及其适用场景,揭示死锁成因与排查方法。针对慢查询问题,系统梳理了索引缺失、SQL写法、连接池配置、Buffer Pool大小等多维度优化策略。最后通过典型场景实战,展示如何在20秒内高效比对200万条数据,提供代码级优化方案。文章以实战为导向,帮助开发者解决高并发场景下的数据库性能瓶颈问题。
2025-07-19 17:24:26
1106
原创 线程不卡且GC正常,我还是找出了分页地雷
一个看似普通的导出功能如何拖垮整个系统?某天系统突然变慢,排查发现资源使用正常,但日志暴增。最终定位到用户无筛选导出触发了大偏移SQL查询(limit 21000000,1000),导致数据库性能骤降。解决方案包括:限制最大导出页数、异步执行+超时控制、全局请求限时配置+限流保护。这次事故揭示了用户行为管控和系统弹性设计的重要性,也为类似问题提供了防范思路。
2025-07-03 16:18:46
1092
原创 实战避坑:MyBatis中${}拼接如何优雅又安全?
在业务代码中意外发现41条安全漏洞,其中SQL注入问题尤为突出。文章指出MyBatis中${}和#{}的关键区别:${}直接拼接SQL存在注入风险,而#{}会预编译参数。虽然某些场景(如动态表名)必须使用${},但需配合多重防护措施:1)白名单过滤;2)正则校验;3)表存在性验证;4)MyBatis的choose标签;5)XML层OGNL正则校验。通过这五层防护,可有效降低动态SQL带来的安全风险。
2025-06-30 20:22:00
1488
原创 阶乘求和全解析:从 Python 秒过到 C++ 手写高精度
本文以洛谷P1009阶乘求和问题为例,探讨了高精度计算在编程竞赛中的重要性。题目要求计算1!到n!的和,看似简单但在C++中却因整数溢出导致错误。通过分析发现n=50时50!远超long long范围,导致计算结果错误甚至出现负数。文章提供了两种解决方案:1)使用Python原生支持的高精度整数轻松解决;2)在C++中手动实现高精度加法与乘法。通过对比两种语言处理大数的差异,文章强调了高精度计算的核心思想,并推荐了LeetCode上的类似题目供延伸练习。
2025-06-29 14:14:41
1209
原创 Gson+OGNL:解析多层级嵌套JSON的终极武器
本文探讨了Java后端开发中解析复杂嵌套JSON数据的挑战。传统方式如Jackson实体类映射和JsonNode动态解析存在维护成本高、冗长易错等问题。推荐使用Gson结合OGNL表达式方案,通过轻量级Map转换和路径导航语法,实现灵活高效的JSON解析。OGNL支持多层属性访问、条件筛选、集合操作等复杂查询,显著提升开发效率和代码可读性,尤其适合结构动态变化的业务场景。
2025-06-22 13:06:30
1296
原创 从零搭建MySQL主从复制并集成Spring Boot实现读写分离
本文介绍了MySQL主从复制的原理与搭建方法。主从复制通过主库记录binlog日志,从库I/O线程获取并写入relay log,再由SQL线程执行来实现数据同步。文章详细说明了一主一从架构的搭建步骤,包括主从库的配置参数设置、复制用户创建、主库状态查看及复制进程启动等关键操作,并提供验证方法。应用层可通过ShardingSphere-JDBC实现自动读写分离,对业务代码透明。
2025-06-14 15:51:56
1270
原创 一文搞懂 MySQL 高读写负载的系统级优化方案
随着业务规模扩大,MySQL 单库单表在高并发读写场景下面临严重性能瓶颈,表现为查询缓慢、写入拥堵甚至服务不可用。本文系统梳理了应对高读负载的策略,包括读写分离、数据库分区、Elasticsearch 引入、缓存优化和数据仓库构建等;并针对写负载问题,重点介绍了 Sharding-JDBC 的原理与使用方法,通过分库分表有效分摊写入压力。文章结合 Spring Boot 实战示例,讲解 Sharding-JDBC 配置、分片算法及分页查询常见问题,帮助开发者构建稳定、高性能的数据库架构体系。
2025-06-08 21:15:07
929
原创 从REST到GraphQL:Java开发者的现代API进化指南
文章从GraphQL的产生背景出发,对比了GraphQL、REST和gRPC的核心特性差异,详细介绍了GraphQL的基础语法包括类型系统、查询、变更和订阅操作。最后通过Java实战案例,演示了如何使用Spring Boot和graphql-java快速构建GraphQL服务,涵盖依赖引入、Schema定义、Resolver编写等关键步骤。该技术特别适合数据需求复杂、追求高效开发体验的应用场景。
2025-05-30 16:47:42
1074
原创 SpringBoot揭秘:URL与HTTP方法如何定位到Controller
SpringBoot揭秘:URL与HTTP方法如何定位到Controller
2024-12-27 16:01:46
2008
原创 云原生基础设施指南:精通 Kubernetes 核心与高级用法
云原生通过微服务、容器、DevOps 和持续交付实现敏捷开发和稳定运行,Kubernetes 是实现这一目标的核心技术。通过了解 Kubernetes 的资源模型、控制器和网络组件,可以帮助企业构建高效、灵活和可扩展的云原生应用。
2024-12-08 14:39:41
1634
原创 一文掌握Kubernetes核心组件,构建智能容器管理集群
Kubernetes(K8s)是Google开源的容器编排平台,用于自动化部署、扩展和管理容器化应用。其架构分为控制平面和工作节点:控制平面负责集群管理,包含API Server、调度器、Controller Manager和ETCD;工作节点运行应用,包含容器运行时、Pod、Kubelet和Kube Proxy。K8s通过YAML文件定义应用部署策略,支持自动扩缩容和故障恢复。开发者使用kubectl工具操作集群,外部请求通过Ingress控制器访问服务。K8s实现了应用的高效部署和管理,降低了运维复杂性
2024-10-24 17:22:11
2547
原创 破解反编译:使用 ClassFinal 保护你的SpringBoot代码
在数字化时代,保护Java项目源代码安全至关重要。本文详细介绍了从源代码编译到生成可执行Jar包的全过程,并分析了反编译工具(如JD-GUI和CFR)的风险。为防止代码泄露,推荐使用ClassFinal Maven插件对Jar包进行加密,提供配置示例及启动方式。同时指出该插件在JDK 17与Spring Boot 3.3.0/3.2.0下的兼容性问题,建议使用Spring Boot 3.1.0确保稳定运行。通过加密和混淆技术,可有效降低商业代码被反编译的风险。
2024-10-08 19:09:06
5085
2
原创 告别繁琐!用 Light To Freedomen一键打造你的专属后台管理系统
告别繁琐!用 Light To Freedomen一键打造你的专属后台管理系统
2024-09-25 14:16:03
3246
算法与数据结构课程设计:棋盘覆盖实现(使用HTML,CSS,JS)
2022-06-28
数字逻辑交通信号灯的设计
2022-06-28
天天影院在线管理平台(SSM)
2022-03-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅