2

私はC#Webサイトのデザインコンセプトに苦労しています。

整数を1日中継続的にインクリメントするアプリケーション(継続的な長時間実行プロセスの単純な表現)が必要だとします。私(および他のユーザー)がログオンし、現在の値を表示し、理想的には更新を確認し、場合によってはリセットしてログオフし、プロセスを実行したままにするWebサイトを作成する必要があります。

これを1つのWebサイトとして作成できますか、それとも、ページを提供するWebサイトと、継続的な作業を行うための個別のアプリケーションを作成する必要がありますか?

4

4 に答える 4

2

個人的には、「作業」は、(データベースの状態を介して、または何らかのトランスポートメカニズム、WCF、メッセージキューなどを介して直接)対話できるWindowsサービスの一種である必要があります。次に、Webサイトは既存のサービスと通信し、必要な処理(ステータスの取得、更新など)を実行します。

于 2012-08-16T15:07:58.357 に答える
0

複数のページを提供する必要がないため、1つのWebページを持つことができます。このページは、内部メモリ、データベース、または継続的に更新されているWebサービスからカウンター値を読み取ることができます(AjaxUpdateパネルを追加して表示する場合があります)。ResetCounter()次に、データベース/ Webサービスに接続し、カウントをリセットするような関数をコーディングできます。

于 2012-08-16T15:10:05.713 に答える
0

SQL ServerなどのACID準拠のデータベースに整数を格納することに問題がありますか?次に、作成したWebアプリケーションを操作できますよね?この整数値のような共有オブジェクトを処理する理想的な方法のようです。ACID準拠とは、整数がハードウェア障害に十分耐えることを意味し、整数を調整しているユーザーに関するアクティビティをログに記録できます。共有メモリに値を保持する独自のサービスを作成しても、データベース。

于 2012-08-16T15:17:09.787 に答える
0

あなたが取ることができるいくつかのルートがあります。これを3つの異なる役割に分けます。

  • 状態管理:このレイヤーは、カウンターまたは作業の状態を保存するだけです。使用するデータストアの種類(SQL Serverなど)を決定する
  • ワーカー:このレイヤーは「ワーカー」の役割であり、カウンターの増分や実行する必要のある作業を担当します。他の人が投稿したように、これはWindowsサービスである可能性がありますが、おそらくWCFサービスとして公開されているWindowsワークフローを選択します。この方法で「ワーカー」を管理する方がはるかに簡単で、よりスケーラブルなソリューションを提供します。
  • UI:次のレイヤーは、ASP.NET MVCアプリケーションなどの実際のWebサイトであり、サービスにサブスクライブしてさまざまなメソッド呼び出しを行うことができます。

ワークフローサービスを参照してください:http://msdn.microsoft.com/en-us/library/dd456797

于 2012-08-16T15:23:28.820 に答える