2团日志

MySQL因字符集不一致导致联表查询索引失效

1. 前言 近期在验收厂商提交的功能时,发现某SQL执行存在严重性能问题。初期判断可能因测试环境MySQL配置较低且涉及多表JOIN,故未深究。 但随着测试深入,该SQL执行耗时远超可接受阈值,异常延迟引起警觉,随即启动专项排查。 2. 分析 执行 EXP

2团 2团 Published on 2025-06-23

WebSocket服务开发实践小结

1. 前言 在近期项目的 WebSocket 服务开发过程中,总结了一些关键技术要点。 其中最重要的一点:WebSocket无鉴权机制。 2. 请求无法携带Header 前端反馈,由于浏览器安全策略限制,在发起 WebSocket 连接时,无法通过 JavaScript 代码设置自定义 HTTP H

2团 2团 Published on 2025-06-17

Nginx/OpenResty以及Spring Cloud Gateway代理WebSocket

1. Nginx/OpenResty location ~ ^/api(/business-apps/ws/.*)$ { # 去除请求路径中的api前缀 rewrite ^/api(/.*)$ $1 break;

2团 2团 Published on 2025-06-11

MyBatis-Plus的LambdaUpdateWrapper通过Interceptor实现字段加密的考量

1. 前言 在项目中,当使用 LambdaUpdateWrapper 执行 update 操作时,发现字段无法像实体保存那样自动加密,必须手动赋值加密后的值。于是深入分析了加密拦截器的实现逻辑。 2. 拦截器实现 2.1 拦截器实现 拦截器关注update操作,代码大致如下: private f

2团 2团 Published on 2025-06-05

Spring WebFlux中数据流share后重复执行问题排查

1. 前言 在Spring WebFlux项目中,WebClient将调用特定的AI服务并获取其返回的数据流。系统会依据数据流中首个响应的类型,将数据流分发至不同的处理模块(例如音频、文本、图像等)。各模块处理完成后,数据流将被合并并返回给客户端以供渲染。在此过程中,通share()操作将数据流共享

2团 2团 Published on 2025-05-15

MySQL检查存储引擎及表主键检查

1. 检查存储引擎 SELECT TABLE_TYPE,ENGINE,count(*) FROM information_schema.tables WHERE table_schema='jcdb' GROUP BY TABLE_TYPE,ENGINE; 2. 表主键检查 SELECT count

2团 2团 Published on 2025-04-15

为什么不使用okhttp代理Server-Sent Events(SSE)

近期项目中需要实现Server-Sent Events(SSE)代理,最初技术选型是想基于OkHttp实现。 要使用okhttp代理,则需要额外引入okhttp-sse(4.12.0版本,2023.10.17)依赖,具体如下: <dependency> <groupId>com.square

2团 2团 Published on 2025-04-14

Spring WebFlux配置API路径

SpringBoot中配置API路径,参照如下配置: server: servlet: context-path: /api/v1 然而在Spring WebFlux项目中,需要按照如下方式配置API路径: spring: application: name: api-ser

2团 2团 Published on 2025-04-14

Netty中LoggingHandler输出日志展示

1. 前言 Netty中提供了LoggingHandler,便于开发者快速定位网络事件。此处简单记录下一次PING-PONG的日志输出。 2. 服务端/客户端实现 2.1 服务端 public class TestServer { public static void main(Strin

2团 2团 Published on 2025-04-09

Netty中NioEventLoop#run()中wakeUp竟态问题解析

1. 前言 最近在看NioEventLoop#run()实现时,对如下注释产生了兴趣。 switch (selectStrategy.calculateStrategy(selectNowSupplier, hasTasks())) {

2团 2团 Published on 2025-04-08
Previous Next