首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >推荐一款比druid更方便定位慢SQL的工具

推荐一款比druid更方便定位慢SQL的工具

原创
作者头像
IT学习日记
发布于 2026-11-09 19:28:09
发布于 2026-11-09 19:28:09
370
举报

写在前面

大家好,这里是IT学习日记。今日推荐项目:sql-analysis工具,获取方式在文后!

1000+优质开源项目推荐进度:57/1000。如需更多类型优质项目推荐,请在文章后留言。

项目简介

慢SQL是日常给线上系统带来抖动的最大隐患之一,特别是大促期间,如果出现慢SQL,破坏性不可估量!核心痛点是:无法提前发现慢SQL,可能恶化为慢SQL的语句、出现慢SQL后,无法快速止损。

sql-analysis工具:区别于传统的依赖SQL执行耗时评估慢SQL的方法,它直接基于语法和索引进行前置分析,实时根据Explain分析结果分析,不仅能预防某些坏sql在上线后发现是慢sql,还能给出sql优化建议,可以大限度的避免线上产生慢sql。同时支持动态对线上sql进行替换,让线上问题快速止损。

解决方案

经过调研,现在市面上主流的SQL分析组件,核心动能都是在:慢SQL的分析和优化建议、SQL优化重写功能。

主要是偏运维方面的辅助功能,无法做到无侵入和应用代码集成,也同样无法解决核心痛点:慢sql提前分析预警和动态sql替换。

sql-analysis工具提供的解决方案:

  • 尽量在上线之前定位到慢SQL,最好是开发和测试阶段
  • 线上出现慢SQL后,不仅可以通过修改SQL、添加索引等方式,还能能支持热更新方式替换SQL

工具特点

  • 核心优势:与传统的依赖SQL执行耗时来评估慢SQL的方法不同,它基于语法和索引的前置分析,不仅可以预防某些不良SQL在上线后才被发现是慢SQL,还能提供SQL优化建议,最大程度地避免线上出现慢SQL。同时,支持动态替换线上SQL,能够快速止损。
  • 性能:考虑到性能和不同使用场景,系统支持定制化配置,可以选择每个SQL仅检查一次或按指定时间间隔进行检查。SQL替换过程几乎无损耗。
  • 扩展性:支持自定义扩展SQL评分规则和输出方式,便于未来扩展评分规则和以不同方式输出分析结果。
  • 成本:接入成本低,无代码侵入。

快速开始

  • 引入依赖:
代码语言:java
复制
<dependency>
    <groupId>io.github.huht123.sql-analysis</groupId>
    <artifactId>sql-analysis</artifactId>
    <version>1.0.1</version>
</dependency>
  • 配置组件xml:
代码语言:java
复制
<configuration>
    <plugins>
        <plugin interceptor="com.jd.sql.analysis.core.SqlAnalysisAspect" >
            <!-- 开启sql分析功能最简配置 -->
            <property name="analysisSwitch" value="true"/>

            <!-- 开启sql替换功能最简配置 -->
            <property name="sqlReplaceModelSwitch" value="true"/>
           
        </plugin>
    </plugins>
</configuration>
  • 实践使用方案:

项目获取

在文后留言:项目,即可获取!

如果这篇文章对您有帮助,请一定帮我点个 “点赞” 和 “关注”, 这对我非常重要。我将会继续推荐更多优质项目和新闻

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

目录
  • 写在前面
  • 项目简介
  • 解决方案
  • 工具特点
  • 快速开始
  • 项目获取
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档