MLOpsのバックエンド構築
言語を検討する
プロトタイプの機械学習モデルで,本番移行も可能なバックエンドを構築したい 速度が求められる概念検証やMVPの開発などにも良さそう. 要件が厳しいならRustの方が良いか
Goが良さそう
Pros > 学習や推論とコードを共有可能. ライブラリも膨大
Cons > 実行速度が遅い. 並列処理に限界がある
Goの利点 > 実行速度が速い. 高負荷でも低遅延な並列処理が可能
Cons > 起動が遅い. メモリ消費が激しい
Goの利点 > 起動が速い. メモリ効率が良く,クラウドでスケールしやすい
Pros > Go以上にメモリ効率がよく,速度も上. 型安全もより強力 Goの利点 > 学習コストと能力のバランスを取れる. 構文がシンプルな分, Rustより開発速度が速くなりやすい より型安全で効率の良いRustに比べ,Goはとにかくシンプルで書きやすいらしい. しかも,安定して動くし,何より学習難度が低く,同僚が抵抗なく拡張できる
Pros > フロントエンドと言語を統一可能. I/O待機に強い(どういう意味?) Cons > 型安全でない. CPUによる重い処理が大変 Goの利点 > 並列処理が強いので重い処理が平気?