AetherEchoesEngineering
Vol.042025年8月12日
Engineering#00112 min2596 view

ActiveModelSerializers の代替を探した記録

AMS のメンテナンス停滞を受けて、Blueprinter / Alba / Panko を比較。AetherEchoes が最終的に AMS を残した理由。

SoSoraEndo2025年8月12日2 min259

動機

AMS(active_model_serializers)は活発な開発が止まりつつある。代替を探したログ。

比較対象

gem速度API の素直さadapter 機能
AMS
Blueprinter
Alba
Panko最速×

なぜ最終的に AMS を残したか

AetherEchoes は :attributes adapter で camelCase を一括変換しているのが効いていて、これが他の gem だと自前実装になる。速度的にも記事 100 件返す程度なら誤差。

移行を選ぶ基準

  • req/sec が支配的なエンドポイントがある → Panko / Alba を検討
  • JSON
    仕様に合わせる必要がある
    → AMS を継続が無難
  • シリアライザの DSL が辛くなってきた → Blueprinter

まとめ

gem の選択は「速い・遅い」より「自分のコードベースで最も使う機能」で選ぶ。比較表は出発点で、最終決定は自分のリポジトリでの実測です。

Tags

Reaction

Share

X (Twitter)