OneSignalのRust 4年間の実運用レポート
(onesignal.com)- 2016年から本番環境でRustを利用中
→ メインのプッシュ配信サービスから、分析データ処理のためのKafka Consumer群まで
- 2016年には毎秒12.5万件、週20億件のプッシュ → 2020年現在は毎秒175万件、日70億件へと24倍に成長する中でRustが大きく貢献
Pros and Cons
-
Rust は依然として、安全性のためのオーバーヘッドなしに強力で高性能なシステムを構築できるようにしてくれる
-
2015年と比べてかなり成熟したが、今なお言語は変化し続けている
-
Rust-Analyzerが大きく進化し、自動補完、リッチなツールチップ、定義へ移動、エラー/警告/リンティング表示、さらにリファクタリング支援まで追加された
-
コンパイル速度改善のためにインクリメンタルコンパイルが追加されたが、コンパイル速度は依然としてGoのほうが速い。ただしRustはリリースごとに高速化している
-
HTTPに関する問題はFutureとasync/awaitのおかげでかなり解消された
→ 2016年以降、多くの改善があったが、その中でも最も有用な変化は非同期プログラミングの導入
- Rustには非常に多くの新機能が追加されてきたが、今後もまだ多くの面白い変化が期待される
→ Generic Associated Types (#1598)
→ Custom Test Frameworks (#2318)
まだコメントはありません。