私は 2 つのアプリケーションを持っています。1 つ目は PHP Symfony で、2 つ目は Rails です。どちらも独自の独立した app&db サーバー上にあります。
私のRailsアプリでは、最初のアプリDBから3つのテーブルを定期的に更新する必要があります(すべてのレコードを取得し、変更/追加されたかどうかを確認し、Rails DBを更新します):
SERVER1 [MySQL DB1 -> APP1 (in php)]
||
|| <--copy with some processing
\/
SERVER2 [MySQL DB2 -> APP2 (in rails)]
次の 2 つのオプションを検討します。
- SERVER1 DB からデータを受信するための PHP API をビルドします。
- DB1 で必要なテーブルへの読み取り専用アクセス権を持つ mysql ユーザーを作成し、
establish_connection
リモート DB を表す Rails モデルで (とともに) 使用します。
2 番目の解決策では、ソース サーバーで TCP/IP ポートを開く必要がありますが、最初に、承認を使用して API を記述する必要があります。
両方の長所/短所は何ですか? (パフォーマンス? セキュリティ? 安定性? スケーラビリティ? など)