Memo

共 45 条

配置 npm 与 node-gyp 镜像

npm set registry https://registry.npmmirror.com
npm set disturl https://npmmirror.com/mirrors/node

按需补充二进制下载镜像:

npm set sass_binary_site https://registry.npmmirror.com/mirrors/node-sass
npm set electron_mirror https://registry.npmmirror.com/mirrors/electron
npm set puppeteer_download_host https://registry.npmmirror.com/mirrors
npm set chromedriver_cdnurl https://registry.npmmirror.com/mirrors/chromedriver

启用 Java GC 日志轮转

java -jar ./gclog-1.0-SNAPSHOT.jar \
  -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=10K \
  -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:/tmp/gc-%t.log \
  -XX:+UseG1GC -XX:MaxGCPauseMillis=200

允许 perf 采集内核回溯

出现以下报错时:

Perf-based stall detector creation failed (EACCESS), try setting /proc/sys/kernel/perf_event_paranoid to 1 or less to enable kernel backtraces: falling back to posix timer.

perf_event_paranoid 设为 1:

sudo sh -c 'echo 1 > /proc/sys/kernel/perf_event_paranoid'

二分查找路径 MTU

从以太网 MTU 1500 对应的 1472 字节负载开始,按结果调整:

ping -M do -s 1472 -c 1 <ip>

修复 xfs.h 的 void 指针算术错误

Clang 编译 XFS 头文件时,void * 不能直接参与指针算术。将:

void *next = ((void *)gpr + gpr->gpr_reclen);
return next;

改为:

void *next = ((char *)gpr + gpr->gpr_reclen);
return (struct xfs_getparents_rec *)next;

使用 Git LFS 管理大文件

初始化 Git LFS:

git lfs install

追踪 ISO 并提交:

git lfs track "*.iso"
git add .gitattributes
git add file.iso
git commit -m "Add disk image"
git push

提高 Meilisearch 请求体大小限制

MEILI_HTTP_PAYLOAD_SIZE_LIMIT=1Gb

可写入 Meilisearch 的服务配置或环境变量。

Kopia 配置文件位置

  • Windows: %APPDATA%\kopia\repository.config
  • macOS: $HOME/Library/Application Support/kopia/repository.config
  • Linux: $HOME/.config/kopia/repository.config

迁移 Kopia 快照

kopia snapshot migrate --source-config ./repository.config --all

理解 Nginx 499 与客户端超时

若 Nginx 的 upstream 超时为 60 秒,而客户端请求超时为 15 秒,处理超过 15 秒的请求会先被客户端断开。Nginx 尚未达到 504 的判定阈值,因此记录为 499。

排查时应同时核对客户端、代理和 upstream 的超时配置。