3

毎分サーバーにデータを送信する車両がいくつかあります。サーバーはリッスンし、データをデコードしてデータベースに保存する必要があります。毎分数千のエントリがあります。その問題を解決するための最良のアプローチは何ですか?

4

3 に答える 3

6

私の個人的なお気に入りであるWCFまたはWebServiceファームは、データをMicrosoftメッセージキュー(MSMQ)に送り、アプリケーションサーバー(1つ以上)にデータを変換してDBに配置させます。

深くなるにつれて(必要に応じて)、MSMQの機能を使用して、タイムアウト、ロードバッファリング、「デッドレター」、サーバー障害などを処理できます。 この記事を検討してください

これのWebに面する側では、ステートレスで薄いため、複雑な負荷分散を考慮することなく、このレイヤーを簡単にスケールアウトできます。DNS負荷分散を使用して開始し、必要に応じてより適切なソリューションに移行できます。

さらに、MSMQを使用すると、キューにあるメッセージの数を確認することで、システムが「遅れている」ことを確認することもできます。その数が0に近い場合は、問題ありません。その数が止まることなく上昇し続ける場合は、パフォーマンスを向上させる必要があります(別のアプリケーションサーバーを追加します)。

于 2009-03-31T20:22:44.347 に答える
0

各操作にどれくらいの時間がかかると思いますか? あなたが言っていることから、処理後にデータをデータベースに直接書き込むことができるように見えるので、スレッドをまったく同期する必要はありません(データベースはそれを処理する必要があります)。

于 2009-03-31T20:19:21.017 に答える