私は Rails でプログラミングを始めて約 7 か月になります。主にデータベースを管理するためのアプリで、クリーンアップ、更新、削除、孤立したエントリの検索などを行います。
PHP で記述されたデスクトップ プログラムと通信する API があります。今では、すべてを Ruby に移行したいと考えています。この API は非常に高速である必要があり、ビューや HTML ページは一切ありません。JSON 経由でのみアプリと通信し、アプリが表示して操作するデータを送受信します。
基本的な質問は、Sinatra と Padrino (ActiveRecord を使用) を学習して API を構築するか、Rails で構築するかということです。
Rails を使用すると、すべてのテーブルが同じ (データベースは同じ) であるため、所有している多くのコードを保持したり、既存のコードを使用したりでき、API 用のメソッドをさらに記述することができます。
これには 2 つの欠点があります。
- これは、API ビットとすべてのメンテナンス ビットがあるため、コードの管理と読み取りが難しくなることを意味します。
- これは、同じ Ruby アプリが 2 つの作業を行っていることを意味するため、API は別の別の Ruby アプリで実行されている場合ほど高速ではありません。
- すでに Rails アプリは速度的には優れていませんが、これは Rails 自体よりもホスティング ソリューションに関係していると思われます。
Sinatra と Padrino を学ぶのは手間がかかるかもしれませんが、よりクリーンなコードになり、API 用に別の Ruby アプリを作成し、メンテナンス用に別の Ruby アプリを作成することで、見た目が良くなります。
しかし、Sinatra と Padrino については何も知りません。フットプリントと速度は本当にRails より優れているのでしょうか?
これについては、Rails と Sinatra の両方を Padrino で実際に使用したことがある方からのご意見をお待ちしております。
乾杯。