37signals を参照してください。彼らはこの分野の専門家であり、コミュニティの質問に答える記事がたくさんあります (あなたのような多くの記事が出てくるはずです)。
高いスケーラビリティ = 37 シグナル アーキテクチャ
Ask 37signals: クレジットカードはどのように処理しますか?
データベースの数に関しては、David Heinemeier Hansson のWhat do you want to know? から。
いくつかの技術的な回答…</p>
ランス、スケジュールされた請求業務はすべて自動化されています。そのようなものは何でも私たちを狂わせます。不測の事態に備えて、クレジット カードの不履行に対応できるようにすることが特に重要です。最後に調べたところ、クレジット カードの有効期限が切れているか、限度額を超えているか、閉鎖されていることが原因で、請求の 5% が返送されたようです。丁寧に扱ってください。
Authorize.net と別のクレジット カード アプリケーション (Rails で開発され、REST を介して内部ネットワーク上の他のアプリで使用される小さなアプリ) を使用して、番号を安全に保ちます。
ウォーレン、私たちは同じデータベースで無料アカウントと有料アカウントを運営しています。アプリケーションごとに 1 つのデータベースです。通常、アカウントごとに 1 つのデータベースを使用するのは、非常に悪い考えです。通常、データはかなり正規化されていますが、私たちはそれについて宗教的ではありません. 私は通常、スキーマよりもソース コードを重視します。したがって、スキーマを曲げることでより優れた/よりきれいなソース コードを取得できる場合は、通常はそうします。ただし、正規化から始めて、パフォーマンスまたはコード構造が必要とする場合は非正規化します。
ジェイソン、私たちは SMS に電子メールを使用します。米国のすべての通信事業者には、phone@carrier-gateway.com ゲートウェイがあります。
ジェイク・グッド、ああ、古き良き「しかし、それはスケールしますか」という質問。私は数年前にそう答えました。それ以来、私たちにとって何も変わっていません。私たちは毎日何百万もの動的リクエストを管理しており、多くのキャッシングに頼ることさえありません (ほとんどのアプリケーションのほとんどの画面はユーザーごとに異なるため、従来のキャッシング スキームを適用するのは困難です)。
日々何千万件ものリクエストを管理している Rails アプリケーションは他にもたくさんあります。すべてが多かれ少なかれ同じシェアード ナッシング アプローチに従います。高くて高くスケーリングするためのすべてのテクニックがそこにあります。それはほとんどターンキー ソリューションではありませんが、それを約束するものは通常、それでいっぱいです。