問題タブ [scheduling]
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.
python - Pythonの長時間実行デーモンジョブプロセッサ
2つの目的を果たす長時間実行プロセス(Linuxデーモン)を作成したいと思います。
- RESTWebリクエストに応答します
- スケジュール可能なジョブを実行します
もともとは、実行を実行して更新を実行し、その後cronした単純なプログラムとして機能していましたが、REST要件が追加され、一部のジョブの頻度を変更したいのですが、他のジョブは変更しません(すべてのジョブの頻度が異なるとしましょう)。
長時間実行されるプロセス、特にリクエストに応答するのではなく、独自に処理を実行するプロセスを作成した経験はありません。
私の基本的な計画は、REST部分を別のスレッド/プロセスで実行することであり、ジョブ部分を別々に実行することを考えました。
パターン、特にpythonが存在するかどうか(私がやりたいことの例を探しましたが、実際には見つかりませんでした)、またはこれらを満たすためにプロジェクトを移行することから始める場所について誰かが提案を持っているかどうか疑問に思っています新しい要件。スケジューリングに触れるプロジェクトをいくつか見ましたが、実際のユーザーエクスペリエンス/提案をここで探しています。何がうまくいく/うまくいかないのですか?
windows-mobile - モバイル用 CRONTAB
ふと思ったのですが、もう考えた人がいるかもしれません!
crontab
携帯電話用(Java 対応携帯電話用)の型アプリケーションを作成することはできますか? スケジュールされたタイミングでチェックを行い、特定のケースでは手動で介入することなく動作するアプリケーションを考えています。
誰かがそのようなアプリケーションを構築したことがありますか、またはアイデアを持っていますか? リンクとポインターが役立ちます。それとも、そのようなアプリケーションは Windows Phone 用に既に存在しますか?
前もって感謝します。
project-management - 現実的な(しかし速い)ベータバージョン管理スケジュールとは何ですか?
私のチームはアプリケーションの展開を間近に控えており、一部のお客様とのクローズドベータ版を開始しようとしています。新しいベータバージョンを作成するための現実的な時間枠はどのようなものであり、リリースに十分安定した最初のバージョンを呼び出す前に、現実的に必要と予想されるそのようなサイクルの数を知りたいと思います。
アプリケーション自体は医用画像アプリケーションであるため、データがクラッシュしたり破損したりすることは絶対にありません。また、多くのユーザーが1日4〜8時間以上継続して使用しているため、通常のユーザーエラーはかなり早く発生すると思います。アプリケーションは特定のハードウェアに関連付けられており、ハードウェアがある場合は、ハードウェアを実行するためにこのアプリケーションまたは以前のバージョンのアプリケーションが必要になります。
もちろん、今、今、今、それを解放するように上からの圧力もあります!そして、彼らは私の給料を払っているので、私が迅速なリリースについてどんな不安を抱いても、私は彼らの指示に従う義務があります。
次のシナリオが実行される可能性があると思います。
- 2週間のサイクルタイム。3〜5つのサイトなど、選択したユーザーグループがあり、バグが発生した場合は修正します。このサイクルタイムはとてつもなく速いと思いますが、PowersThatBeがどのように展開したいかはすでに感じられます。このアプローチでは、製品を特定のビルドにロックし、蓄積されたエラーは次のリリースで修正します(後で50ビルドになる可能性があります)。
- 6週間のサイクルタイム。同じ選択したユーザーグループがありますが、そのグループは成長する可能性があり、成長するにつれて、ステップ1のように動作します。1ほど速くはありませんが、確かにより慎重です。問題は、ユーザーは製品に過度のバグがあるという印象を受ける可能性があり(バグに遭遇した場合)、別のバージョンをリリースするまでその印象に対抗することはできません。その時点で、ユーザーは気にしない可能性があります。先に述べたハードウェアへのロックインがあるので、バグの印象は、売り上げを失うのではなく、軽度の不平を言うことにつながる可能性があります。ただし、新しいベータバージョンはそれぞれ、前回よりもはるかに精査されます。
- バグが修正されるとすぐに、修正されたバージョンをユーザーの手に渡してください。ビルドサーバーがあり、複数のテスターがあり、非常に迅速に応答します(「アジャイル」と言うこともできます)。ソフトウェアが必要とする他の動作を修正が壊さない限り、バグを修正するのと同じ速さでバグ修正を提供することに欠点はありますか?このアプローチを採用した場合、サイクルを実行するのでしょうか、それとも単にベータ版の「期間」を実行するのでしょうか。
これらの質問はユーザーごとに大きく異なり、BlizzardやGmailのベータ期間のようなものは少し長めです。ベータ版の期間についての経営陣の絶え間ない質問にどのように答えるべきかについて、私はまだ一般的な感触を得たいと思います。
ruby-on-rails - Webベースのスケジューラを実装するためにどのようなアプローチをお勧めしますか
私が開発するアプリケーションには、ある種のスケジューラーを実装しなければならないことがよくあります。アプリケーションは、単純なメンテナンスタスクからかなり複雑なものまでさまざまです。
これまでの私のアプローチは、基本的にキューに入れられたコマンドのバッチ処理を行うcronジョブを設定することでした。たとえば、cronで5分ごとにスクリプト(RubyOnRailsで作業しているため、これはランナースクリプトです)を呼び出します。このスクリプトは、処理する必要のある項目があるかどうかを確認し、タスクを適切なハンドラーに委任します。
これは機能しますが、何らかの理由で最善のアプローチとは思えません。あなたは何かを推薦することができますか、またはこれについて何かコメントがありますか?
私はRubyonRailsで作業していますが、この議論をRoRだけに限定する必要がある理由はありません。
ありがとう、
cron - このクォーツCron式はどのように実行されますか
私は以下を持っています。
私の質問は、このジョブが空のcron式に対してトリガーされるのはいつですか?
ruby-on-rails - 定期的なタスクをモデル化してレールに保存する方法は?
レールのcronソリューションは多数あり、かなり優れています。それは私がここで苦労していることではありません。
代わりに、私が問題を抱えているのは、ユーザーが独自の定期的なタスク(リマインダーなど)を作成できるようにすることです。具体的には、これらをモデル化してDBに保存する方法です(優れたUIも重要です)。そのためのコード)。Googleカレンダーはここでの良い例です(カレンダー全体ではなく、イベントを追加するためのUI)...毎日午後1時CST、月/水/金、または毎週などに実行できる必要があります。どのcronソリューションでも使用されている場合は、データベースをポーリングして、その時間に送信する必要のあるリマインダーなどを確認する必要があります。
Railsでこれに適したプラグイン/gemを見た人はいますか?そこに何かがあるようですが、私はまだそれを見つけていません。
ありがとう!
c# - プリエンプティブ待機キューを実装する最も効率的な方法は?
私はこれを理解しようと頭を悩ませてきました。これがシナリオです。私は基本的に、イベントが発生するはずのさまざまな時間を含むソートされた静的リストを持っています。視覚化の場合:
したがって、このメソッドを初めて使用すると、lastTime
プロパティはnullになるため、「何らかの作業を行い」、lastTimeプロパティを現在の時刻に設定します。timeプロパティは、アイテムを再度実行する必要がある時期を示します。たとえば、要素0のalastTime
と03:10:00
Timeは1であるため、で実行する必要があります03:11:00
。要素1と2の両方でalastTime
を03:10:00
使用し、両方でで実行する必要があり03:12:00
ます。
これが私が行っていることの大まかな実装です:
実行する必要のあるものがない場合は、リスト内の次の項目を更新する準備ができるまでスリープ状態になります。内側のforループは、頻繁に更新されるアイテムが、頻繁に更新されないアイテムが更新されるまで待機してから、再度更新されるのを防ぐために配置されています。理想的なシナリオでは、Sleepを呼び出す前に、上記の項目を更新する必要があるかどうかを確認します。現在のアイテムがスリープする前に、現在のアイテムより上のアイテムを更新する必要がある場合は、先に進んでそれらを更新します。そうでない場合、現在のアイテムはスリープを呼び出して、更新の準備ができるまで待機します。これが理にかなっていることを願っています。
私はこれについて完全に間違っていますか?これに対するより簡単な解決策はありますか?私はありとあらゆる提案を受け入れます。また、このリストは数千のアイテムに増える可能性があることに注意してください。前もって感謝します。
mysql - データベース設計-この日付値を示すNULLまたは最大値?
だから私はMySQLDBを使用するスケジュールアプリに取り組んでいます。このサイトのモジュールの1つは、マネージャーが遅刻、残業、欠勤を追跡するためのものです。現在のサイトはめちゃくちゃです。マネージャーにキーデータを入力させるだけですが、マネージャーを既知のデータ(従業員が到着/退去する予定の場合など)にバインドしたり、標準形式を使用するように要求したりすることはありません。30分(30分遅れ)と入力するマネージャーもいれば、8:30(8:00に予定されている)と入力するマネージャーもいます。
私のバージョンははるかに制限されます。マネージャーは従業員を選択し、次に問題のシフトを選択します。基本的に、実際に到着した時間と実際に残った時間の2つの値を入力できます。このように、レポートが実行され、タイムシートが検証されるとき、それは単にそれらが遅い/早い/残業であるかどうかを確認するために計算を行うことの問題です。しかし、私は困難な場所に遭遇しました:
まず、誰かが病気で電話をかけた場合(または単に表示されない場合)、私はそれを持っているので、マネージャーはそのチェックボックスをオンにするだけで、時間の調整はまったく行われません。その時は完全に真っ暗になります。両方の時間値をNULLに設定してこれを行う必要があり、クエリが実行されると、必要に応じてNULLが処理されます(おそらく、残り時間が逆になり、時間が到着して両端がゼロになる)、または到着時間と残り時間の両方が「予想されるシフト終了」時間に設定されているので、ゼロになりますか?
利用可能なデータがないように感じるのでNULLを使用するのは好きではありませんが、期待されるシフトエンドを使用するのは好きではありません。
これは、データを過度に複雑にする(NULLを使用する)ことなく、データをセマンティックにする方法の問題です。
mysql - 他のテーブルで一致しない場合に外部キーとして使用するもの - MySQL
スケジュール Web アプリの出席/残業モジュールに取り組んでいます。アイデアは、MySQL にシフトのテーブルがあり、各シフトには開始時刻と終了時刻があるということです。マネージャーはシフトを選択し、従業員が早退/遅刻/早退/残業したかどうかを指定して出勤テーブルにエントリを作成します。出勤テーブルのエントリは、シフト ID # (列挙されたキーにすぎません) に合わせられます。
しかし、誰かが休みの日に入ってきた場合、それをキーにするシフトはありません。これらのキーに使用するのに適したシステムは何ですか? C条件付き列挙を設定できますか? また、シフト ID と重複するリスクを回避するにはどうすればよいですか? 元のスケジュール DB に残業シフトを追加することはできません。
linux - どのスレッドがミリ秒レベルで実行されているかを監視するツールまたは方法を教えてください
ミリ秒レベルで実行されている広告を監視するツールまたは方法を教えてください。ありがとう。
3 つのスレッドが実行されていて、以下のような情報が必要だとします。
注: カーネルをハッキングせずにこの問題を解決することをお勧めします。
編集 :
2.6.21 Linux カーネルを使用する MIPS プラットフォームで
コマンド TOP はスレッドに関する情報を提供できますが、それほど多くはありません。