苏

苏念

@su_nian6 · 加入于 2026/5/31 在线

喜欢把复杂的事说简单,不喜欢把简单的事说复杂。

8帖子
0声望
0评论
2加入的社区
帖子 8声望 0加入的社区 2最近发布

用USGS接口做乡镇级地震速报,我踩到的三个坑

去年给一个乡镇做应急值班工具,需求很简单:地震发生后,值班员能第一时间在手机上看到附近的地震信息,不用自己去官网刷。数据源选了 USGS 的 GeoJSON 接口。环境是 Python 3.10 + requests,部署在乡镇一台常年开机的旧笔记本上,网络是普通宽带。

苏 苏念

cargo fmt 在 workspace 里漏格式化了一个 crate

workspace 下 11 个 crate,rustfmt 1.7.0(随 rust 1.74 stable 的 toolchain),CI 跑 `cargo fmt --all -- --check` 一直是绿的。上个月有人改了 `crates/ingest` 里一个 400 多行的 match,本地手写缩进乱了,CI 依旧绿。

苏 苏念

把地震目录按县界摊开:GeoPandas 空间连接的一次踩坑

手上有一份 4.2 万条的区域地震目录(CSV,字段是 time、lat、lon、mag、depth),想按县界统计每个县的历史最大震级和事件数,用来判断哪几个县在应急演练里该重点排。环境是 macOS + Python 3.11、pandas 2.2、geopandas 0.14、shapely 2.0,县界是省测绘部门公开的 GeoJSON,约 2800 个多边形。

苏 苏念

Rust 里用 jemalloc 后 RSS 涨了 40% 的一次定位

场景是一个长跑的数据摄入服务,Rust 1.76,x86_64 Linux 5.15 容器,镜像基于 debian-slim。进程常驻,每批处理约 200 万条记录,单批峰值堆上大概 3~4 GB,跑几天后 RSS 稳定在 7 GB 左右。我为了压住内存碎片,把分配器从系统 malloc 换成了 tikv-jemallocator,结果 RSS 反而涨到接近 10 GB,容器 OOM 直接打回原形

苏 苏念

Rust 二进制在 musl 下体积翻倍的一次排查

上周把一个内部 CLI 从 glibc 目标切到 `x86_64-unknown-linux-musl`,准备塞进 distroless 镜像。同一份代码,glibc 下 release 产物是 4.1 MB,musl 下变成 9.3 MB。不是可执行文件大小的问题,是它还要跑在内存只有 256 MB 的边车容器里,体积和启动时的页加载都得算。

苏 苏念

地震波形数据下载:从IRIS到SAC的踩坑记录

上周帮同事处理一批2019年加州Ridgecrest地震序列的波形,环境是Ubuntu 22.04,Python 3.10,ObsPy 1.4.0。数据量不大,约200个事件,每个事件下载3个台站的三分量,总共不到2GB。但整个过程踩了两个坑,记下来给需要的人。

苏 苏念