問題タブ [long-running-processes]

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.

0 投票する
1 に答える
1019 参照

php - Apache の下で PHP から実行される長時間の MySQL クエリ: ブラウザは結果を出力せず、「データを転送しています…」を保持します。

私は Apache 2.2 PHP 5.3 MySQL 5.5 アプリケーションを持っています。page1.php のフォームは、ユーザー入力を受け入れます。値は GET を使用して page2.php に渡されます。page2.php の PHP スクリプトは MySQL クエリを実行し、結果を表示します。ユーザー入力パラメーターに応じて、クエリは 3 ~ 900 秒実行される場合があります。

私のテストでは、実行時間が 300 秒未満のクエリの結果はすべて OK と表示されます。実行時間の長いクエリはサーバー上で正常に完了しますが (たとえば、500 秒後に CPU 負荷が 90% から 0% になることがわかります)、ブラウザーに結果が表示されず、ステータス バーに "Transfering data from my.host.org . ..」

この時点で、同じブラウザー (Firefox) の新しいインスタンスでアプリケーションのページを開こうとすると、タブヘッダーに「接続中...」と表示され、タブヘッダーに「my.host.org を待っています...」と表示されますステータスバー。この時点で、アプリケーションの任意のページを他のブラウザー (IE) で開いても問題ありません。

以下は、これまでに変更/設定した設定ですが、役に立ちませんでした。どんなアイデアでも役に立ちます。ありがとうございました。

0 投票する
1 に答える
661 参照

asp.net - asp.net long running task

I've implemented this solution to running a long running task in asp.net http://haacked.com/archive/2011/10/16/the-dangers-of-implementing-recurring-background-tasks-in-asp-net.aspx

But I've been getting this error: "A process serving application pool 'DefaultAppPool' exceeded time limits during shut down. The process id was '1111'. " Has anyone run into this issue before and know what, if anything, I've done wrong.

Is there a limit to how long asp.net will wait because my task may take at least a couple hours to run.

Please don't answer by saying I shouldn't be using asp.net. I have to at this point.

thanks.

0 投票する
2 に答える
4663 参照

python - フラスコの長いルーチン

Flask アプリで長い作業を行う必要があります。そして、私はそれを非同期にしたい。作業を開始してから、javascript からステータスを確認してください。

私は次のようなことをしようとしています:

しかし、これは機能しないガンコーン労働者を生み出します。

どうすれば解決できますか?セロリのようなものを使うべきですか?

0 投票する
1 に答える
1685 参照

.net - ロングランニングWF 4パターン

私は次のことを達成しようとしています:

  1. カスタム アクティビティを含む長時間実行されるワークフローを開始します。
  2. これらのカスタム アクティビティは、ブックマークを作成してその再開を待つというパターンに従います。
  3. 開始されたワークフロー ID を返し、どこかに保存します。
  4. 後で、保存された ID からワークフローをロードします。
  5. ワークフローが完了したかどうかを確認し、完了していない場合は、ブロックされたブックマークがあるかどうかを確認します。
  6. これらのブックマークを再開すると、関連するアクティビティが終了し、最終的にワークフロー全体が終了します。

簡単な使用例は、ドキュメントをレビューして承認または却下するためのワークフローです。そのためのワークフローが作成され、個人に通知され、レビューを承認または拒否することで、必要なときにいつでもフィードバックを提供できます。

http://xhinker.com/post/WF4.aspxで入手できる Andrew Zhu のコードを例として使用しました。

私が抱えている問題は次のとおりです。

  1. 私が説明したようなカスタム アクティビティを使用すると、ワークフローの開始WaitForRunnableInstance時に無期限に待機するため、ワークフローが開始されてデータベースに永続化されたことは通知されません。
  2. ワークフローは実際に保存され、BlockingBookmarksカスタム アクティビティの ID に設定された列ExecutionStatus、アイドルにIsInitialized設定された列、1 にIsSuspended設定された列、0 にIsCompleted設定された列、0 に設定された列、0 に設定された列がありIsReadyToRunます。

私はすでにマイクロソフト フォーラムでディスカッションを開始しまし。 、しかし、まだ何かが正しくありません。

これに関するアイデアはありますか?カスタム アクティビティを使用して長時間実行されるワークフローに役立つパターンはありますか?

ありがとう!

0 投票する
3 に答える
454 参照

python - App Engineで長時間実行されるトランザクションを実装する方法はありますか?

データを収集してデータストアに保存するために多くのHTTPリクエストを作成する関数があります。すべての呼び出しが成功する必要があります。そうでない場合は、すべてがロールバックされる必要があります。実行時間は10分近くになります。AppEngineの最大トランザクション期限はデフォルトの60秒のようです。

これを増やして関数をトランザクション化する方法はありますか?

0 投票する
4 に答える
5440 参照

c# - asp.netで非同期的に長期的なプロセスを実行するにはどうすればよいですか?

.net 4.5、asp.net mvc:ASP.NETアプリケーションから長期的なプロセス(1〜2分)を実行するための最良の方法は何ですか?シングルスレッド環境で実行する必要があります。つまり、プロセスは次の目的で開始されます。一度に1人のユーザーのみ、他のすべてのユーザーの実行は、現在の実行が完了するまで待機する必要がありますか?シナリオは次のとおりです。ユーザーがボタンをクリックして、ある種の長期的な計算を実行し、http応答がすぐにユーザーに返され、ユーザーは別の要求で計算のステータスを手動で要求する必要があります。Asp.net httpセッションの中止は、プロセスの終了につながるべきではなく、継続する必要があります。プロセスは、同じサーバーまたは別のサーバーで実行される場合があります。

0 投票する
2 に答える
1047 参照

asp.net - asp.netページからWindowsサービスを起動してポーリングする方法

クライアントは、数百のレコードを持つ外部ソースからデータベースの更新を開始するボタンを備えたasp.netページを望んでいます。このプロセスには長い時間がかかります。彼はまた、「1000レコードのうち10レコードを処理する」など、プロセスの実行中にステータスを更新することも望んでいます。いろいろな記事を読んで、データベース更新コードをWindowsサービスに入れることを考えています。私はこれまでWindowsサービスを使用したことがなく、Windowsサービスを起動してasp.netページからポーリングする方法に関するチュートリアルを多く見つけることができません。私の質問は、これがこのプロセスを処理するための最良の方法ですか?そして、これをどのように達成したかについての例はありますか?

0 投票する
0 に答える
160 参照

asp.net - WCF から asp.net ページへのステータス更新の取得

ステータスの更新のために WCF サービスの静的変数にアクセスできるかどうか、またできる場合はどうすればよいか知りたいです。

何千もの製品を更新する長いプロセスがあります。このプロセスは asp.net ページから開始され、ユーザーは、プロセスの実行中にサービスからのステータス更新 (つまり、「製品 123 の処理」) を要求します。私はサービスを持っており、ステータス更新のためにサービスをポーリングするために使用したい更新パネル内にタイマー コントロールがあります。タイマー コントロールがポストバックするときに、GetStatus メソッドを使用してサービスにクエリを実行して現在のステータスを取得すると考えていましたが、サービスの新しいインスタンスが Page_Load で作成されるため、ステータス メッセージは常に同じになると思います。では、WCF サービスから asp.net ページへの実行ステータス変数を取得するにはどうすればよいでしょうか?

私のWCFサービスで

編集: [ServiceBehavior(InstanceContextMode = InstanceContextMode.PerSession)] について読んだところですが、これだけで十分ですか?

0 投票する
1 に答える
86 参照

nservicebus - 独自のキューを長期的なプロセス操作のホルダーとして使用するアプリケーション

長期的なプロセス ハンドラを作成し、そのために NServiceBus を使用したいと考えています。NServiceBus の役割は、そのプロセス (ある種のバッチ プロセス) の操作を保持することです。私がしなければならないことではないと思います。

ロジックは次のとおりです。1) 長期プロセスの注文を受け取ります。2) それを N 個の操作に分割します。3) 各操作はメッセージに「パック」され、キューにプッシュされます。4) メッセージのタイプに応じて、特定のハンドラーメッセージを処理し、それが保持する操作を行います。

アプリケーションは別のメッセージを処理する必要があるため、すべての操作を 1 つのキューに入れることはできません。これには迅速な応答が必要です。キューが操作でいっぱいになると、別のメッセージが処理されるまで長時間待機します。

それで、誰もその問題を解決する方法を知っていますか?

0 投票する
1 に答える
83 参照

android - Androidでアプリケーションの起動イベントを取得することは可能ですか?

特定の許可されたアプリを表示するアプリケーションを開発しています。ユーザーがこれらの許可されたアプリ以外を起動しようとした場合、それらをブロックしたいと思います。

ActivityManager.getRunningTasks(..)を使用して実行中のタスクを取得し、それらのパッケージ名を確認できることはわかっています。しかし、RunningTask 情報は、アプリの起動後にのみ取得されます。そのため、デバイスの戻るボタンを試行しているときに、ブロックされたアプリケーションが起動します。以前に実行していて、続行できません。

ブロックされたアプリが起動前に起動されないようにする方法は? どんな助けでも-大歓迎です。

前もって感謝します