私の基本的な質問は次のとおりです: 急速に成長する可能性のある Web アプリケーションの構築を開始するにはどうすればよいですか?
ちょっとした背景: 私の顧客が Web アプリケーションのオファーを求めています。詳しくは言えませんが、eコマースとクラウドファンディングのようなものです。そのため、彼はいくらかのお金を使いたいと考えており、無制限に成長できるサイトを期待しています。
Zend Framework 2 と MySql でビルドする予定です。私の問題は、大規模な Web アプリケーションの経験がないことです。私はどこでも読んでいます:問題ありません。プロジェクトを開始するだけで、プロジェクトが大きくなった場合は、それに反応してキャッシング、クラスタリングなどを追加できます.
しかし、これは本当に正しいのでしょうか?それとも、最初からスケーラビリティ メカニズムを追加する必要があるのでしょうか? たとえば、クラウド サーバー (Amazon EC2) は、ファイル システムに対して異なるアプローチを採用しています。後で切り替えることは可能ですか?または、ロード バランシングについてはどうでしょうか。セッション処理で問題が発生しますか? そしてMySqlはどうですか?または、NoSql アプローチから直接開始することをお勧めします。
したがって、私の現在の計画は次のとおりです。
- ステップ 1: ZF2 と MySql を使用して通常どおり Web アプリケーションをビルドします。
- ステップ 2: memcache や opcode などのキャッシングを追加する
- ステップ 3: MySql クラスターまたは NoSql または負荷分散またはクラウド サーバー??
アップデート:
わかりました、私の質問が少し広すぎることはわかっています。だから私はそれをいくつかの特定の質問に追跡しようとします:
- クラウドサーバーから直接始めたほうがいいですか?
- クラウドサーバーは無制限に拡張できますか?