7

App Harbourを使用してターンベースのゲーム用のバックエンドサーバーを開発していますが、これまでのところ、それは私のニーズに完全に適合しているようです。ターンデータなどを処理するためにバックグラウンドプロセスを実行したいのですが、「Webワーカー」と「バックグラウンドワーカー」の違いを誰かが明確にできるかどうか疑問に思いました。私はWeb開発の経験がかなり限られていますが、「Webワーカー」はAJAXページ(私は必要ありません)と対話するためのものであり、「バックグラウンドワーカー」はバックグラウンドでコンソールアプリケーションを実行できるようにします(必要です!)

ありがとう!

4

2 に答える 2

5

Webワーカーはブラウザーからの要求に接続されており、ブラウザーでデータを取得して要求に送信できます。

バックグラウンドワーカーは独立したスレッドであり、リクエストに接続されておらず、ブラウザーだけにデータを送信することはできません*。

[*]Webワーカーを介してのみ。

于 2012-06-23T13:35:16.340 に答える
4

一般に、「Webワーカー」は、ユーザーからの要求を処理するWebアプリケーションまたはASP.NETサイト/サービスです。「バックグラウンドワーカー」は、単にスケジュールされたタスクです。指定された間隔でバックグラウンドで実行され、いくつかのコードを実行します。

違いは、Webワーカーは、アプリケーションに新しい要求が来たときに何らかの作業を行うことです。要求とは、誰かがASP.NETでページをロードしたりWebサービスを呼び出したりすることを意味します。バックグラウンドワーカーが一定の間隔で開始されている間、実行するページをユーザーがロードする必要はありません。これは主に、実行時間の長いタスクの処理に使用されます。通常のワークフローは次のとおりです。Webワーカーはユーザーからリクエストを受け取り、処理するデータをキューに入れます。次回の実行時に、バックグラウンドワーカーはデータを取得して処理し、データをどこかに(通常はデータベースに)格納します。次に、Webワーカーは、ユーザーからの次の要求でデータベースをチェックし、結果がそこにあるかどうかをユーザーに表示します。

このように、ユーザーはasp.netページがデータを処理してすぐに結果を返すのを待つ必要はありません。

于 2012-06-23T13:02:38.130 に答える