自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(517)
  • 资源 (42)
  • 问答 (1)
  • 收藏
  • 关注

原创 Mysql的CTE 与开窗函数

MySQL 8.0及以上版本支持CTE(公共表表达式)和开窗函数。CTE通过WITH关键字定义临时结果集,可用于简化嵌套查询和递归查询。开窗函数通过OVER()子句实现分组排名、累计计算等功能,不减少查询行数。两者结合使用可提升复杂查询的可读性和性能,适用于层级查询、销售排名、累计统计等场景。递归CTE还能处理树形结构数据。这些功能使MySQL 8.0+成为处理高级分析查询的强大工具。

2025-05-31 00:15:00 638

原创 @Async 注解 走的是主线程 还是子线程呢

Spring框架的@Async注解用于异步方法执行,标记的方法将在子线程而非主线程中运行。通过创建代理对象并借助TaskExecutor线程池,该注解能实现方法调用的异步处理,提高程序响应性和性能,适用于耗时操作。使用需在配置类添加@EnableAsync,且需注意避免同类内部调用以免失效。

2025-05-31 00:00:00 298

原创 索引下探(Index Condition Pushdown,简称ICP)

索引下探(ICP)是数据库优化技术,通过将WHERE条件下推到存储引擎层执行,减少回表查询次数。其工作原理是存储引擎在读取索引时直接过滤条件,仅返回有效记录。该技术能显著降低I/O开销,提升查询性能,尤其适用于大数据量场景。MySQL(5.6+)、PostgreSQL等主流数据库均支持ICP,但需注意存储引擎限制。典型应用如联合索引查询,可通过减少服务器层过滤提升效率。开发中可通过监控工具跟踪ICP使用效果,但需注意并非所有条件都支持下推。

2025-05-24 19:05:49 404

原创 使用Chrome waterfall 查看接口耗时

1. 设置 waterfall。

2025-05-24 18:16:58 210

原创 Doris ClickHouse Greenplum 对比

本文对比了Doris、ClickHouse和Greenplum三大OLAP系统的核心架构、性能特征及适用场景。Doris采用MPP架构,适合实时数仓和高并发查询;ClickHouse以超高速导入和查询见长,适合日志分析;Greenplum基于PostgreSQL,支持完整ACID事务。性能方面,ClickHouse导入速度最快(50-100w行/秒),Doris并发能力最强(1000+ QPS),Greenplum则在复杂事务处理上有优势。选型建议:实时看板选Doris,日志分析用ClickHouse,事务

2025-05-24 18:15:23 584

原创 Redis 只是解决查询快的问题,可以解决并发问题么?那系统中的高并发问题是如何解决的呢?

Redis 更多是用来解决查询效率的问题,它通过把一些热点数据,比如商品信息、库存、用户数据缓存在内存中,大大减少了对数据库的访问次数,从而提高了读写性能。所以在应对高并发的时候,系统设计通常是多方面配合的。当然,服务本身也需要做拆分,比如用微服务把不同业务模块独立出来,再加上负载均衡和多副本部署,让请求分散到多个服务实例上。所以总结下来哈,Redis 只是高并发解决方案中的一个环节,真正能支撑高并发的系统,一般都是限流、缓存、异步、服务拆分和数据库优化等手段配合起来使用的,缺一不可。

2025-05-22 20:39:26 202

原创 回表是数据库概念,还是mysql的概念?

“回表”是数据库中的一个概念,尤其在MySQL的InnoDB引擎中常见。InnoDB中,表数据按主键顺序存储,主键索引即表本身。二级索引仅存储索引列和主键值,不包含整行数据。当通过二级索引查询时,若所需字段不在索引中,数据库需先通过二级索引定位主键值,再根据主键值从主键索引中获取完整数据,这一过程称为“回表”。回表意味着无法仅通过索引获取所有数据,需返回主键索引查询完整行,增加了查询步骤。例如,查询用户表中某名字对应的邮箱,若邮箱不在二级索引中,则需回表获取。优化SQL时,应尽量减少回表操作,使用覆盖索引(

2025-05-21 20:14:17 398

原创 JAVA服务内存缓慢上涨,年轻代GC正常但Full GC频繁,如何定位?

文章分析了JVM中Full GC频繁发生的原因,并提出了可能的解决方案。首先,年轻代GC正常,说明年轻代对象回收无问题,但Full GC频繁可能由于老年代空间不足或内存泄漏导致。文章建议检查JVM参数,如堆内存分配和GC策略,并观察GC日志以监控Full GC的触发频率和老年代使用率变化。此外,通过jstat和jmap工具监控老年代内存走势和生成堆转储文件,可以帮助定位内存泄漏问题。文章还提供了特殊场景的检查清单,如元空间泄漏和堆外内存泄漏,并推荐了生产环境的JVM参数配置,以优化GC性能和减少Full G

2025-05-21 19:44:42 437

原创 IntelliJ IDEA设置编码集

在IntelliJ IDEA中设置Properties文件的编码格式,首先需在File -> Settings -> Editor -> File Encodings中,将Global Encoding和Project Encoding均设为UTF-8,以确保项目编码一致。对于Properties文件,需在Default encoding for properties files中选择UTF-8,并勾选Transparent native-to-ascii conversion,以避免中文

2025-05-18 14:00:12 344

原创 ApiFox 打开控制台快捷键

mac:按 option + cmd + i。win:按 alt+7+8,

2025-05-17 00:00:00 87

原创 跨境支付接口RT从300ms突增至2000ms,但CPU/Memory无异常,如何排查?

跨境支付接口的RT突增,但系统资源(CPU、内存)正常。可能的因素包括网络延迟、外部服务依赖、数据库查询性能、锁竞争、中间件问题或代码逻辑变更等。跨境加速方案 启用云服务商的全球加速服务(如AWS Global Accelerator/AliCloud GA)grpcurl -d '{"req_id":"1"}' -plaintext 网关地址:端口 服务路径。E -->|异常| G(联系云厂商优化路由)J -->|外部服务| L[降级熔断策略]F -->|正常| H[全链路追踪分析]

2025-04-26 16:45:39 758 2

原创 JAVA服务内存缓慢上涨,年轻代GC正常但Full GC频繁,如何定位?

另外,JVM参数设置不当,比如老年代过小,或者没有合适的GC策略,也可能导致Full GC频繁。年轻代GC正常,说明年轻代的对象回收没有问题,可能大部分对象都是朝生夕死的,所以Minor GC能有效清理。但Full GC频繁,通常意味着老年代空间不足,导致频繁进行Full GC来回收老年代。关注 -Xmx(最大堆)、-Xms(初始堆)、-XX:NewRatio(年轻代/老年代比例)等参数是否合理。-XX:NewRatio=3 # 老年代与年轻代1:3。

2025-04-26 16:29:07 599

原创 Property ‘configuration‘ and ‘configLocation‘ can not specified with together

MybatisAutoConfiguration.class中configuration和configLocation属性同时被指定,导致sqlSessionFactory创建失败。检查应用的配置文件(如application.yml或application.properties),确保不同时指定mybatis.configuration和mybatis.config-location属性。

2025-04-17 21:14:08 203

原创 typora 收费前版本下载

3. MacOs4. Linux。

2025-04-17 21:07:30 283

原创 Mac OS 禁用 SIP 系统完整性保护

3. 在终端输入命令csrutildisable并按Enter键。4. 重启后,在终端查看状态。表示您已成功关闭SIP保护。

2025-04-06 15:02:24 471

原创 git commit Message 插件解释说明

build - 影响构建系统或外部依赖项的更改(例如作用域:gulp、broccoli、npm)- style - 不影响代码含义的更改(空白、格式化、缺少分号等)- refactor - 既不修复错误也不添加功能的代码更改。- revert - 恢复此更改之前的提交。- perf - 提高性能的代码更改。- feat - 一项新功能。- fix - 一个错误修复。- docs - 仅文档更改。

2025-04-04 00:00:00 366

原创 macOS 系统安装cloc 统计代码量

cloc(Count Lines of Code)是一款常用的统计代码量的工具,它能统计多种编程语言的代码行数。

2025-03-29 09:30:00 200

原创 Mac安装 brew

【代码】Mac安装 brew。

2025-03-22 01:00:00 246

原创 Mac 杀掉端口对应的进程

【代码】Mac 杀掉端口对应的进程。

2025-03-22 00:30:00 411

原创 Mac 清理 maven仓库无效引用

【代码】Mac 清理 maven仓库无效引用。

2025-03-22 00:00:00 148

原创 Mac 的触控板设置和屏幕设置

1. 触控板2. 显示器。

2025-03-20 18:37:41 336

原创 XA规范及2PC 3PC 介绍

XA 规范的定位:是早期为解决分布式事务(一个系统操作多个数据库)问题制定的一套解决方案,定义了分布式事务模型。模型中的角色:AP(应用程序):发起分布式事务操作的应用主体。TM(事务管理器):负责统筹管理整个事务流程。RM(资源管理器):具体资源的管理方,如数据库(示例中以 MySQL 说明)。CRM(通信资源管理器):处理事务过程中的通信,属于可选组件(如消息中间件)。核心概念:全局事务。

2025-03-13 13:04:51 625

原创 简单工厂 、工厂方法模式和抽象工厂模式

简单工厂、工厂方法:侧重单个产品的创建。例如,创建 “手机” 这一产品,简单工厂通过条件判断决定具体手机类型,工厂方法通过子类工厂创建特定手机。抽象工厂:同样是创建型设计模式,聚焦 “产品族” 的创建,一个工厂类负责创建一组相关产品(如手机、耳机、充电器组成的电子产品族)。工厂方法:是标准的创建型设计模式,定义抽象创建接口,由子类决定实例化哪个具体产品类,强调 “单一产品” 的灵活创建。工厂方法:扩展性好。新增产品时,只需定义新的产品类和对应的工厂子类,无需修改原有工厂代码,完全符合开闭原则。

2025-03-11 11:47:30 1382

原创 Spring AOP、Java Agent 与 ASM 的作用和区别

【代码】Spring AOP、Java Agent 与 ASM 的作用和区别。

2025-03-11 10:29:28 307

原创 Java 字节码操纵框架 -ASM

ASM 是用于 Java 字节码操纵的框架,可动态生成新类或增强现有类的功能。它既能直接产生二进制 class 文件,也能在类被加载到虚拟机之前动态改变类行为,通过读取类文件信息来分析、修改类行为,甚至生成新类。许多流行框架如 cglib、Hibernate、Spring 都直接或间接地使用 ASM 来操作字节码。

2025-03-09 20:05:39 461

原创 java 语言和虚拟机规范

Java SE Specifications (oracle.com)Java Downloads | Oracle

2025-03-09 18:29:27 103

原创 JDK 的 SPI 和 Dubbo 的 SPI

SPI(Service Provider Interface)是一种服务发现机制,它允许在运行时动态加载服务实现。JDK自带的SPI机制主要定义在类中,通过配置文件的方式来指定服务的实现类。

2025-03-09 18:06:08 517

原创 对RocketMQ集群进行消息轨迹的追踪

启动这个Broker的时候会自动创建出来一个内部的Topic,就是RMQ_SYS_TRACE_TOPIC,这个Topic就是用来存储所有的消息轨迹追踪的数据的。接着消息到Broker端之后,Broker端也会记录消息的轨迹数据,包括如下:消息存储的Topic、消息存储的位置、消息的key、消息的。在订阅消息的时候,对于Consumer也是同理的,在构造函数的第二个参数设置为true,就是开启了消费时候的轨迹追踪。就会上报这个消息的一些数据到内置的RMQ_SYS_TRACE_TOPIC里去。

2025-03-09 16:21:47 774

原创 RocketMQ基于延迟消息机制优化大量订单的定时退款扫描问题

RocketMQ默认支持一些延迟级别如下:1s 5s 10s 30s 1m 2m 3m 4m 5m 6m 7m 8m 9m 10m 20m 30m 1h 2h。其实发送延迟消息的核心,就是设置消息的delayTimeLevel,也就是延迟级别。上面代码中设置延迟级别为16,也就是对应上面的30分钟。

2025-03-09 15:58:16 204

原创 基于RocketMQ的数据过滤机制,提升订单数据库同步的处理效率

基于RocketMQ的数据过滤机制,提升订单数据库同步的处理效率。

2025-03-09 15:38:02 220

原创 Rocket MQ 实现消息的顺序生产和消费

对于有序消息的方案中,如果你遇到消息处理失败的场景,就必须返回SUSPEND_CURRENT_QUEUE_A_MOMENT这个状态,意思是先等一会儿,一会儿再继续处理这批消息,而不能把这批消息放入重试队列去,然后直接处理下一批消息,依然会存在消息错乱的问题。也就是说,Consumer会对每一个ConsumeQueue,都仅仅用一个线程来处理其中的消息。交给Consumer中的多个线程来处理的话,那还是会有消息乱序的问题。这里有两种方式: 1. 取模运算 2. hash 运算。

2025-03-09 15:23:14 430

原创 RocketMQ 中 使用 Half 消息

在Rocket MQ中,Half消息(半消息)是一种特殊的消息类型,通常用于分布式事务场景。在这种场景下,消息的生产者发送一条消息到消息队列,但这条消息在事务提交之前处于“预备提交”状态,即Half消息状态。在生产者发送消息时,需要设置消息为Half消息。这通常是通过在发送消息时指定事务属性来实现的。第一个参数是消息本身,第二个参数是用户自定义的事务上下文,可以为null。方法中,您需要实现本地事务逻辑,并根据事务执行的结果返回相应的。方法中,您可以检查本地事务的状态,并返回相应的。

2025-03-07 10:16:58 410

原创 千兆网卡的理论上限计算

那么 1000Mbps 换算成 MB/s 就是 1000÷8 = 125MB/s,在实际应用中,通常近似认为千兆网卡的理论上限是 128MB/s。需要注意的是,这只是理论传输上限,在实际网络环境中,由于网络开销(如协议包头、校验等)、服务器性能瓶颈(如 CPU 处理能力、内存读写速度等)以及网络拥塞等因素影响,实际传输速率往往会低于这个理论值。千兆网卡中的 “千兆” 指的是 1000Mbps(兆比特每秒),这里的 “b” 是小写,代表比特(bit)。

2025-03-03 16:35:47 461

原创 java 实现简易基于Dledger 的选举

/ Dledger 节点类,包含节点的状态、日志存储、选举和日志复制逻辑 class DledgerNode {// 选举超时时间的最小值(毫秒) private static final int ELECTION_TIMEOUT_MIN = 150;// 选举超时时间的最大值(毫秒) private static final int ELECTION_TIMEOUT_MAX = 300;

2025-03-03 13:16:32 292

原创 AI 创作歌曲网站整理

分离工程文件splitter:https://vocalremover.org/splitter-ai。makebestmusic: https://makebestmusic.com/ 制作歌曲。分轨:https://emastered.com/deepseek: 写歌词。

2025-03-02 11:57:34 4867

原创 产品版本分类

产品版本分类,我感觉即使有了这些内容,还是不太懂,真是小刀拉老屁股--开了眼了。

2025-02-24 14:10:40 105

原创 pika 支持的redis接口及兼容情况

大小超过 50G、80G 等等这样的情况,会遇到启动恢复时间长,一主多从代价大,硬件成本贵,缓冲区容易写满等问题。Pika 就是针对这些场景的一个解决方案。Pika 主要解决的是用户使用 Redis 的。

2025-02-21 11:10:21 232

原创 我们来帮两个老板解决怎么安排会议的问题

张老板:10:00~11:00, 13:00~14:30, 16:00~19:00。李老板:10:15~12:30, 13:30~14:30, 19:00~20:00。请帮忙找出两个人都空闲可以安排时间段,并打印出来给两个人选择。

2025-02-19 19:55:53 149

原创 Redis 统计每个数据类型中占用内存最多的前 N 个 bigkey

【代码】Redis 统计每个数据类型中占用内存最多的前 N 个 bigkey。

2025-02-18 11:22:04 214

原创 Redis 启用自动内存碎片清理异常

从源代码编译 Redis 并使用修改后的 Jemalloc。替换动态链接的 Jemalloc 库。

2025-02-17 20:28:51 445

nfs服务搭建.pdf

nfs服务.pdf

2021-05-25

BES Cluster Installation Guide.pdf

宝兰德安装手册

2021-05-18

BES Cluster Quick Start.pdf

BES Cluster Quick Start

2021-05-18

KingbaseESV8运维文档.doc-revHEAD.pdf

KingbaseESV8运维文档.doc-revHEAD.pdf

2021-05-19

通软终端安全管理系统V6 卸载脚本

通软终端安全管理系统V6 卸载脚本

2021-03-19

js生成Guid序列号

js生成Guid序列号

2017-06-06

分布式id公开课.pptx

分布式id公开课.pptx

2021-07-14

SuwellDesigner-2.0.21.0621-setup.exe

SuwellDesigner-2.0.21.0621-setup

2021-07-07

NFS搭建步骤.doc

NFS搭建步骤.doc

2021-05-25

cpuz1.95.0.zip

cpuz

2021-01-27

redis6.0笔记代码资料.zip

redis6.0笔记代码资料.zip

2021-04-22

spring5源码笔记.zip

spring5源码笔记.zip

2021-04-22

vue 自定义函数库总结

vue 自定义函数库总结

2021-04-22

java jar包加密.zip

java jar包加密,及使用说明

2021-04-14

百度hi 内置截图

百度hi 内置截图,小巧,方便,高大上,便携,绿色,小巧,方便,高大上,便携,绿色

2017-11-27

G6N5-see_yong.sql

see_yong

2021-02-02

QuickMemoryTestOK.rar

内存检测工具

2021-01-27

主机编号检测工具V1.57.200116.zip

主机编号检测工具V1.57.200116 http://robot.lenovo.com.cn/querytools/configure/configure.html?topType=ram

2021-01-19

登录压测test.jmx

登录压测 jmeter脚本.jmx

2021-01-06

rediscluster高可用.zip

rediscluster高可用集群搭建手册,从0 到1 完美的实现 redis集群搭建 redis5种数据类型

2020-05-20

软件开发项目任务拆分模版示例

软件开发项目任务拆分模版示例

2025-03-28

相关管理--甘特图模板

相关管理--甘特图模板

2025-02-28

测试用例 和冒烟测试用例模板

测试用例 和冒烟测试用例模板

2025-01-17

Editplus 4GL Progress 高亮配色方案

1. 在第 10行 Workspace Path=D:\devtool\EditPlus 修改成本地EditPlus的安装位置 2.替换 editplus_u.ini 文件 3. 重新打开即可

2024-05-29

容器化开发环境搭建文档

容器化开发环境搭

2023-07-29

领域驱动设计(DDD)实践

领域驱动设计(DDD)实践

2023-07-29

容器化安装环境EFK文档

容器化安装环境EFK

2023-07-29

printscreen截图小工具

printscreen截图小工具

2023-07-30

GitLab 安装配置详细教程

GitLab 安装配置详细教程

2023-06-14

Docker - 使用规范

Docker使用规范.

2023-06-14

K8S基础入门.pdf

K8S基础入门

2023-06-14

Docker-Compose汇总

Docker-Compose汇总

2023-06-14

Docker-Compose全集

Docker-Compose全集

2023-06-14

Docker-Compose入门

Docker-Compose入门

2023-06-14

Harbor安装配置保姆级教程

Harbor安装配置.pdf

2023-06-14

Gitlab-CICD 安装配置

Gitlab-CICD 安装配置

2023-06-14

PrintScreen截图小工具

PrintScreen截图小工具

2023-05-13

java Stream 流使用

java Stream 流使用用例

2023-04-15

音视频通信解决方案合集.pdf

腾讯云 音视频通信解决方案合集

2023-02-26

send wyre postmain json 接口文档

send wyre postmain json 接口文档

2022-10-16

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除