0

次の特性を持つ webapp を構築しています。

  1. ページ数は少なく、ホーム、お問い合わせ、アバウト、サインアップなどがあります。
  2. 各ユーザーには、DOM 要素をドラッグ/ドロップ/操作できる jquery ベースのページが 1 つあります。
  3. ユーザーが要素の操作を終了したら、[保存] をクリックすると、要素が JSON 経由でサーバー上の PHP スクリプトに送信されます。以前に保存した JSON を読み込むこともできます。

基本的に、90% の静的情報を含むページはほとんどありません。クライアント側の作業を含む 1 つのページと、JSON の GETting/POSTing が大量に発生する可能性があります。

PHP/Smarty、jQuery、および mySQL を使用して、この POC を作成しました。ユーザーの詳細は mySQL に保存され、JSON データも保存されます。Web ページは Smarty によってディスクにキャッシュされます。

現在、スケーラビリティについて考えています。明らかな問題は、頻繁に変更される JSON データを mySQL に格納する必要があるのか​​、それとも memcacheDB やその他のキーと値のストアを使用する必要があるのか​​ということです。簡単な mySQL オプションを選択するか、今すぐキー値ストアを導入しますか?それとも、スケールの問題が発生するかどうかを確認するのを待ちますか? 現実的に、mySQL がボトルネックになるポイントに到達することはありますか?

これをまず Slicehost でホストし、必要に応じて移動する予定です。

4

2 に答える 2

1

問題は、これらの値に基づいたルックアップがあるかどうかです。データベースレベルで特定の値の更新があるかどうか...シリアル化されたデータまたはjsonは、文字列全体をプルするだけで、クエリまたは変更する必要がない場合、より高速かつ効率的になります(ストレージに関して)それ。

ただし、スケーリング方法に基づいて、検索目的でフラットなデータ表現とともにキー/値構造を維持することが必要な場合があります。

また、いくつかのベンチマークに apache AB を使用し、変更が同時出力にどのように影響するかについてのアイデアを得ることも検討してください。

幸運を :)

于 2009-09-23T17:48:53.750 に答える
1

JSON に関する限り、違いはありません。そのデータのストレージを最適化する方法がわかりません。質問は「ユーザーデータはどのくらい複雑ですか?」に要約されると思います。RDBMS の外部キーに関連付けられた大規模なソーシャル グラフがあり、そのデータをキーと値のストアにマッピングするのが難しすぎる場合は、今はその労力を費やしたくありません。ただし、ユーザー データが単純なプロファイル情報にすぎない場合は、後で RDBMS 機能を使いすぎる前に、今すぐキー値ストアに移行した方がよいでしょう。

于 2009-09-23T12:34:22.537 に答える