問題タブ [hangfire]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql-server - ExpireAt 後に Hangfire ジョブが削除されない
のデフォルトSQL Serverストレージを使用していますHangfire。1 日あたりのジョブ作成率は非常に高くなる可能性があるため (数十万件)、データベースのサイズも急速に増大します。
Succeeded最初は、仕事は1日で削除されるので、まだ大丈夫だと思っていました. 驚いたことに、数日経っても、その仕事はまだHangfire.Jobsテーブルから削除されていません。
2015 年 7 月 30 日にこのクエリを実行したとき:
を受け取りました2015-07-21 13:28:27.543。これは約 9 日前です。
自分でジョブを手動で削除するか、定期的にクリーンアップするバッチ ジョブを作成できますが、成功したジョブが ExpireAt を超えて保持されるシナリオはありますか?
asp.net - Hangfire はアプリ ドメインの再起動をどのように処理しますか?
私の ASP.NET MVC アプリケーションでは、バックグラウンド タスクを実行し、10 分ほどかかることもあります。この件について読んだところ、アプリ ドメインが再起動してスレッドが削除されることがあることがわかりました。
したがって、いくつかの解決策を調べました。私が見つけた主な解決策はHangfireです。失敗した場合などにジョブを再起動することは理解していますが、アプリドメインの再起動を何らかの形で「バイパス」するか、その場合にジョブを再起動するだけですか?
asp.net - asp.net mvc Web アプリケーションでバックグラウンド タスクを実行するためのツール
asp.net mvc Webアプリケーション内でバックグラウンドおよび長時間実行されるタスクを実行するための正しい設計上の決定について混乱しました。現在、これらの2つのリンクにあります:-
http://www.hanselman.com/blog/HowToRunBackgroundTasksInASPNET.aspx
&
彼らは、リストされた理由 (主に IIS がこれらのタイプのタスクを実行するように設計されていないため) により、asp.net Web アプリケーション内でバックグラウンド タスクと実行時間の長いタスクを実行することは危険であると述べました。しかし同時に、asp.net プロジェクト内にインストールして、quartz.net、WebBackgrounder などのバックグラウンド ジョブを実行できるいくつかのツールをリストしました。
これらのツールがどのように機能するかわかりませんか?たとえば、(nuget を使用して) asp.net mvc Web アプリケーション内に WebBackgrounder をインストールし、IIS 内に asp.net mvc Web アプリケーションを展開すると、これらのツール内で定義されたジョブは IIS でも実行されますか? それとも、Web アプリケーションをホストしている II とは独立して実行されますか?
asp.net - HangFire をインストールした後、asp.net mvc Web アプリケーションを実行できません
私はasp.net MVC-5 Webアプリケーションに取り組んでおり、nugetを使用してhangfireツールをインストールしました:-
しかし、アプリケーションを実行すると、この例外が発生しました:-
2番目の質問。上記のエラー修正を取得した場合、hangfire を使用して定義済みの間隔でアクション メソッドを呼び出す方法を教えてください。現在、私は glabal.asax 内でこれを次のように定義しています:-
- - 編集 - - - - -
startup.css クラスを追加した後、global.asax 内で次のように定義しました:-
主に、Home コントローラーの下で「ScanServer」という名前のアクション メソッドを呼び出します。現在、ScanServer は次の定義を持つ非同期タスクです:-
だから私のglobal.asaxはこのエラーを引き起こしています:-
c# - Hangfire を使用して非同期アクション メソッドを呼び出す方法
私はasp.net mvc5 Webアプリケーションに取り組んでおり、Hangfireをインストールしました:-
その後、次のように startup.css クラスを作成しました:-
次に、global.asax ファイル内で 2 つのアクション メソッドを呼び出してみました。Index ()& ScanServer()、次のように:-
&
Hangfire が次の定義を持つ Index() アクション メソッドを呼び出そうとしたとき:-
私はこのエラーを受け取りました:-
JobStorage.Current プロパティの値が初期化されていません。Hangfire クライアントまたはサーバー API を使用する前に設定する必要があります。
Hangfire が非同期タスクである ScanServer() アクション メソッドを呼び出そうとしたとき、次の定義があります:-
私はこのエラーを受け取りました:-
非同期メソッドはサポートされていません。バックグラウンドで使用する前に同期してください。
誰でもこれら2つの問題を修正する方法をアドバイスできますか?
ありがとう
編集
Startup クラス内に次のように記述しました:-
& ここに接続文字列があります:-
しかし、私はまだこのエラーが発生しています:-
JobStorage.Current プロパティの値が初期化されていません。Hangfire クライアントまたはサーバー API を使用する前に設定する必要があります。
c# - 複数のキューの構成と使用
複数のキューの構成と使用に問題があります。
これが私のスタートアップクラスの内容です:
サーバーは正しく起動し、ダッシュボードからキューを確認できます。
しかし、プロセスをエンキューしようとすると、hangfire は常にジョブをデフォルト キューに設定します。メソッドの呼び出しは次のとおりです。
これはメソッドの実装です:
私は何が欠けていますか?