前司有个同事引入Python的一个包来解析 JSON5, 接口一直是5s. 然后对我怒喷 Python 性能垃圾.
我看了看, 说了句, Python 性能确实不行, 但你这个地方的问题是一个正则表达式就能解决的. 于是优化了一下, 接口变成50ms不到.
然后, 我凭着到现在都学不会的 Rust 技术套壳了 Rust 社区的 JSON5 Parser 包成 Python 的 rust extension, 速度从 5s 提升到了 300ms.
于是我顿悟了, 这写 Python 得会两点
1. 得会逃课, 不要去解决CPU Bound 的问题
2. 得会套壳, 套壳让 Rust 去解决 CPU Bound 的问题.
一个页面几百个 SQL,然后说语言框架性能不好……