几乎没出门,也没拍照

技术

Archlinuxcn 编译机 Web 页面

有人反馈,我的服务挂了。这服务都跑了四年了,怎么突然就挂了

然后发现是,因为 golang 的库读行有限制,一行最多 65536。超出就会报错

% awk '{if (length(max)<length()) max=$0}END{print max}' /home/lilydjwg/.lilac/build-log.json | wc -c
89930

这样去找文件中最长的行,这个太长了

源码在这:

<https://pkg.go.dev/bufio#pkg-constants>

MaxScanTokenSize = 64 * 1024
65536

bufio package - bufio - Go Packages

还先糊一下吧,直接改下本地的源码,把那个值改大一点。交叉编译,上传,启动。完成!

brew list go
/opt/homebrew/Cellar/go/1.22.1/bin/go
/opt/homebrew/Cellar/go/1.22.1/bin/gofmt
/opt/homebrew/Cellar/go/1.22.1/libexec/api/ (25 files)
/opt/homebrew/Cellar/go/1.22.1/libexec/bin/ (2 files)
/opt/homebrew/Cellar/go/1.22.1/libexec/doc/ (5 files)
/opt/homebrew/Cellar/go/1.22.1/libexec/lib/ (4 files)
/opt/homebrew/Cellar/go/1.22.1/libexec/misc/ (26 files)
/opt/homebrew/Cellar/go/1.22.1/libexec/pkg/ (23 files)
/opt/homebrew/Cellar/go/1.22.1/libexec/src/ (9471 files)
/opt/homebrew/Cellar/go/1.22.1/libexec/test/ (3281 files)
/opt/homebrew/Cellar/go/1.22.1/libexec/ (6 files)

Live777 的 RTSP 支持

本来这个打算下个版本再做,但有项目需要,现在不做就会失去这个项目,只能加点班先做 RTSP 的支持

调试全靠 WireShark