自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 解决报错 MySQL5.6升级5.7,部分SQL报错 xxx which is not functionally dependent on columns in GROUP BY clause

项目需要升级MySQL版本,打算5.6升5.7,升级后发现原本正常的部分SQL,不能正常工作。

2025-03-19 16:42:01 149

原创 解决MySQL 5.6升5.7之后,非空有默认值的字段,报cannot be null Column ‘xxx‘的问题

项目需要升级MySQL版本,打算5.6升5.7,升级后发现原本正常的部分SQL,不能正常工作。字段定义为在之前的使用中,有的同事代码不规范,向此字段插入时,会直接插入null,而非不更新此字段的值。

2025-03-19 16:08:54 267

原创 解决SpringBoot 健康检测接口 actuator/health 访问一直卡着,但 actuator/info等其他接口能正常访问的问题

尝试访问 http://localhost:8080/actuator/health 接口,能访问,但既不报错也不返回,一直卡着;访问http://localhost:8080/actuator/info 能访问,也能正常返回信息。对比/actuator/info和/actuator/health接口的差异,发现/actuator/health会返回很多db连接信息,eureka信息等等。最近在做服务迁移,迁移完后的新服务,直接将pod的配置丢到新的K8S集群中,健康监测一直失败。

2025-01-16 09:45:44 465

原创 解决js流式下载工具 stream-saver 在部分网络环境下,下载时浏览器右上角不弹出文件下载框,无法正常下载文件的问题

stream-saver访问了一个github地址做mitm,修改后问题解决

2024-12-04 11:11:32 1120 1

原创 LangChain4j spring boot starter不支持SpringBoot低版本(2.x.x) 的解决方案

当然,我们可以通过Rest API请求对应的接口,以调用AI能力,但一来Java的原生HTTP请求写起来实在麻烦,二来自行对照SDK写HTTP请求,还要封装的漂亮,工作量也决不少。尝试了SpringAI,LangChain4j等等SDK,发觉几乎所有AI工具链在SpringBoot生态中,都只从SpringBoot3.x.x开始提供支持。只为这个功能,就重构/单开出一个Python系统显然不可能,而又面临SpringBoot版本无法升级的困境,只能寻求迂回方案。新增LangChain4j的Bean。

2024-12-02 18:18:22 1621 5

原创 解决Windows + Chrome 使用Blob下载大文件时,部分情况下报错net:ERR_FAILED 200 (OK)的问题

部分线上用户反馈,下载文件会报错,但重启电脑又好了。遂远程客户,发现在下载超过一定阈值大小的文件时,会报错。通过使用stream-saver结合fetch返回的stream,实现流式下载并解决问题

2024-11-19 16:27:22 1401

原创 MacOS Safari浏览器按ESC就退出全屏模式的去除办法

ESC是网页浏览的常规操作,一些弹窗等可以直接按ESC关闭。但Safari遵循了MacOS的默认行为,在按ESC时除了网页本身对ESC的响应外,还会退出全屏,在进行网页工作时经常被退出全屏,极麻烦。本文介绍了此问题的解决方法。

2024-09-14 10:39:35 860

原创 MacOS Sonoma(14.x) 大写模式或中文输入法下的英文模式,光标下方永远会出现的CapsLock箭头Icon的去除办法

如图,MacOS Sonoma(14.x) 大写模式或中文输入法下的英文模式下,光标下方永远会出现一个CapsLock箭头Icon。此Icon挡住视野,还容易误触导致切换大小写状态,带来的收益远远小于带来的困扰。解决方案来自:https://discussions.apple.com/thread/255191086?烦人的CapLock图标再也不会在屏幕上出现了。打开终端,输入以下shell。

2024-09-13 10:59:40 751

原创 一些AIGC大模型在内容识别方面需求的开发流程、优化技巧、与此类需求的注意事项

工作中接到一个任务,需要识别一些文件扫描件,并利用大模型从中提取某些信息。工作流为 OCR -> 大模型。

2024-09-09 10:55:57 298

原创 对接第三方服务时的一个经验教训——一定要事无巨细的打上日志

这几天遇到了一个需要和同公司不同部门的第三方服务对接的需求,那个第三方服务是一个PHP服务,前人没打什么日志,直接让SpringWebFlex框架自动对第三方的返回内容做了反序列化,由此引入了一堆问题。在第三方变更时,有个地方没通知我们,导致我方序列化处的逻辑报错。而由于没打日志,又无法获取到原始返回内容,因此只好将SpringWebFlex的。最终发现无法序列化是因为,PHP服务返回空值时,返回的是个。,然后手动使用Jackson将返回的字符串进行序列化。因此,对接第三方服务时一定要事无巨细的打上日志!

2024-08-19 15:02:24 176

原创 通过IDEA性能分析器,优化减少IDEA的CPU消耗

M1 + 16G 的MacBookPro竟然带不动一个IDEA 2024,CPU动不动飚到600%+,卡的怀疑人生,实在无法忍受。禁用了以下插件,CPU占用明显好转。IDEA提供了自带的性能分析器。

2024-08-06 19:59:20 1233

原创 Postgresql中,ARRAY_LENGTH函数的一个反直觉特性

使用`ARRAY_LENGTH`函数时,需注意:对于空数组`{}` ,其返回值将是`null`,而非`0`

2024-08-03 11:30:09 706

原创 解决使用Mybatis-FLex时,制作Mybatis原生插件导致的动态SQL参数无法正常填入的问题

MybatisFlex确实使用的是继承自`SqlSessionFactoryBean` 的 `FlexSqlSessionFactoryBean` 插件应当加入到FlexSqlSessionFactoryBean中

2024-08-01 11:23:07 484

原创 Ubuntu禁用自动更新弹窗的方法

Ubuntu每次开机都会弹窗提示安全更新,设置里最多只能取消自动下载,自动更新,但无法做到直接让自动更新的弹窗不出现。我们大部分人根本不care Ubuntu的更新,只是把它作为一个带桌面的Linux用,每次开机都弹窗提示更新很烦人。想到:如果直接把snap卸载了,是否还会自动弹窗?反正我们一般也不用snap,都是用apt。防止apt再自动给snap安装回来。尝试了互联网上一些办法,比如编辑。列举所有使用snap安装的软件。重启后,不再弹出自动更新窗口。察觉自动更新窗口标题为。通过apt卸载snapd。

2024-07-22 23:45:39 901

原创 记录发版过程中遇到的一个Mysql天坑:ALTER TABLE加字段时报Duplicate entry的问题

一番查证,发现MySQL在改表时,只要其它SqlSession中触发了Duplicate entry,那么这条改表语句也会报错Duplicate entry。加字段,也不是加索引啥的,怎么还会报这种错?先锁表,再改表,最后解锁表,新增字段成功。而公司之前的业务代码里,很多都是用。发版时加了新字段,需要改表。,因此极易触发此问题。

2024-07-22 20:04:25 314

原创 记录一个ZED IDE插件市场无法访问的问题,与其解决过程与方案

记录一个ZED IDE插件市场无法访问的问题,与其解决过程与方案

2024-07-18 11:32:13 608

原创 深入Java代码生成与AST操作——通过拓展Lombok实现@Nullable: 在长调用链下任意语句返回空值的处理

通过拓展Lombok实现@Nullable: 在长调用链下任意语句返回空值的处理

2024-05-24 18:06:59 523 1

原创 Java中一种获取当前系统类型的办法

工作中遇到需要对Process类做一些拓展,以便在开AI组的Python工作进程时,从stdout、stderr、stdin三种标准输入输出流外的自定义输入输出流传递参数。对Java服务端开发者来说,JDK&JVM往往会直接确保开发者写的所有代码都是各平台通用的,因此Java开发者一般很少关注平台特性。方法,获取到当前系统类型的枚举值,OperatingSystem为枚举类型。在看Open JDK的Process类代码时,发现一段涉及平台特定功能的代码,这对Java服务端开发者来说很罕见。

2024-05-06 14:22:09 282 1

原创 SpringAI初体验:凑合用

库一样,可以提供非常方便的本地模型部署与调用能力,只需要在resources目录下放入从huggingface或公司自己训练的模型,就可以像transforms库那样去调用,而非对云服务商API或Ollama的封装——毕竟调用云服务商的API这谁不能做呢?也就是说,如果想要在SpringAI中,运行一个本地化的大模型,要么用Ollama库里有的,但显然这个库里的大模型并不满足一切场景,要么还要把模型转为onnx格式。有各个AI云服务商的实现,使用上述方式创建的项目,默认引入的是OpenAI的服务,点进。

2024-05-05 00:20:50 678 4

原创 记录一个搭流媒体服务器时遇到的天坑:ffplay的buffer设置

以上10080是SRS默认的SRT端口号,使用ZLMediaKit时换成9000,ip_address换成服务端地址。用SRS和ZLMediaKit分别都搭建过一个局域网的流媒体服务端,流协议使用SRT,只推音频。此时,在本机执行拉流+推流指令,并开始读秒,发现延时高达8秒左右!各种在服务端差延时,看日志,均未发现服务端延时会达到这么高。最后发现竟然是ffplay的问题。设备:MacBook。

2024-04-17 11:00:22 423 1

原创 记录Docker启动SRS,挂载数据卷时,容器内文件被清空问题的解决方案

大意为,当使用这种形式的-v参数时,目录下映像中的任何文件都不会复制到卷中。因此便出现了容器内文件被清空的情况。平时使用docker挂载卷时,没有注意一个细节:如何表示宿主机当前目录,以前都是。部署SRS时发现,想要将SRS的配置文件目录映射到宿主机上,执行此命令。,经过一番查询,发现容器内的配置文件被清空。

2024-04-11 11:39:52 602 1

原创 流媒体开发入门:实时语音房间开发

背景:公司的游戏实时语音房间使用的腾讯的GVoice,希望自研一套实时语音房间服务,现在做一些技术调研。

2024-04-08 13:53:32 359

原创 一种分布式复杂任务调度/算子调度系统的设计

对于分布式算子调度系统,通常需要并行或串行的调度若干个AI或算法进程,并在较大尺度上保持有序性。类似流程引擎,区别在于每个流程节点需要在工作节点上启动单独的进程处理,同时预估进程的资源消耗与执行时间,并限流、保证负载均衡与两个独立流程间基本的顺序性。

2024-02-09 00:52:09 980 1

原创 CMS服务设计

在前两家公司都过CMS系统,技术选型和业务类型各不相同,给第一家公司做的是文章管理系统,第二家做的是带富文本编辑的类论坛系统。记录下此类系统的设计思路与注意事项。

2024-02-01 00:45:12 977 1

原创 Vue + SpringBoot 实现API加解密

测试得到一个结论,对称加密的性能远高于非对称加密,因此,对请求体、响应体这类长文本,最好使用对称加密。现代CPU大都内置AES编解码加速器,估计可以提升AES编解码性能,猜测也能减少AES加解密对常规运算的CPU占用影响。基于以上结论,设计如下的整体加解密思路。

2024-01-30 12:00:50 589 1

原创 JDK 17 踩坑记录

详见IssueOracle JDK 17.0.10 已修复。

2024-01-30 11:26:04 1441 4

原创 Three.js性能优化思路

【代码】Three.js性能优化思路。

2024-01-23 16:38:56 869 1

原创 MAC安装QT,QT下载器报错阿里云某资源找不到的问题

在控制台里启动此下载器,指定镜像源。

2023-04-03 22:31:03 240 1

空空如也

空空如也

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

TA关注的人

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