0

それで、基本的に私が探しているのは、大規模なアプリケーションがユーザーデータベースとネットワーク接続をどのように処理/作成するかについての完全な説明ですか?自分で大きなアプリケーションを作成したのではないでしょうか。彼らはソケットや他の技術を利用していますか?GZIP?JSON?

私が質問している理由は、現在、サーバー側にユーザ​​ーデータベースが必要なアプリケーションを作成しているためです。もちろん、クライアント側からのソケット接続またはHTTPRequestのいずれかが必要です。多くの人がこのアプリケーションを使用することは知っていますが、スケーラブルにする方法がわかりません。

これは私だけでなく多くの人に役立つ質問だと思います=)

どんな助けでも大歓迎です!

//アレクサンダー

4

1 に答える 1

0

適切に拡張できるWebサーバーを使用することに加えて(適切に構成されている場合、apacheは適切に構成されます)、できるだけ多くのクライアントを迅速に処理するのに役立つテクノロジーがいくつかあります。

静的コンテンツ(つまりnginx)に別のサーバーを使用する。これは、静的コンテンツを可能な限り高速に提供することに特化した特別なサーバーです。画像、jsファイル、cssファイルなどへのアクセスに使用されます...あるWebリクエストから別のWebリクエストで変更されないものすべて。

memcachedを使用してデータベース呼び出しを制限します。これは、データベース呼び出しがボトルネックである場合に役立ちます(すべてのWeb要求でデータベースに数回(動的コンテンツ)pingを実行すると、すぐに発生する可能性があります)。これは基本的に、非常に高速に変更されないデータを配置するためのメモリ内の非常に高速な(読み取り:一時的な)場所です。コードを変更して、最初にmemcachedをチェックし、情報が利用可能かどうかを確認する必要があります(つまり、memcachedを使用すると、フィールドが削除される古い時刻を設定します)。データベースにpingを実行します。データが利用できない場合は、データベースにpingを実行し、次のリクエストのタイムアウトを使用してデータをmemcachedに配置します。

このブログにも良い情報があります。
他の人は、この本をいくつかの洞察を得るための良い全体的な場所として言及しています。

于 2012-12-05T14:10:16.413 に答える