书接上文:
经过一个周末的各种折腾,终于用 Rust 实现了 tzf 的功能,代码在
ringsaturn/tzf-rs
。
又用了晚上跑了多次 CI 将 Python 移植也重写出来了
ringsaturn/tzfpy
。
tzfpy 只要安装 >= 0.11.0
版本的就是用纯 Rust 实现的,在这个版本号之前都是
Python+CGO 实现的。 API 参数和之前一样,没有变化,但是索引命中的时候只需要 3~4
微妙,之前 Python+Go 需要 16 微妙。 最慢的单次查询 300 多微妙,timezonefinder(用
C 实现的多边形算法版本) 最慢的时候会有 1000 多微妙。