問題タブ [polling]
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.
monitoring - ウェブサイト監視ライブラリ
stackoverflow で Web サイトのパフォーマンスを監視するツールやサービスについての話がいくつかありますが、実際の機能に対してかなり高価に思えます。Web サイトの可用性のチェック/監視を自動化するための優れたオープンソース ライブラリはありますか?
matlab - 転送中のファイルを検出しますか?
ディレクトリを数秒ごとにポーリングして、新しい入力ファイルのディレクトリを監視するアプリケーションを作成しています。多くの場合、新しいファイルは数メガバイトになるため、入力ディレクトリに完全に到着するまでに時間がかかります (例: リモート共有からのコピー時)。
ファイルが現在コピー中であるかどうかを検出する簡単な方法はありますか? どの方法もプラットフォームやファイルシステムにとらわれないことが理想ですが、それができない場合は、プラットフォームごとに特定の戦略が必要になる場合があります。
数秒間隔で 2 つのディレクトリ リストを取得してファイル サイズを比較することを既に検討しましたが、これは時間と信頼性のトレードオフになり、他に方法がない場合を除き、上司は満足していません。
背景として、アプリケーションは一連の Matlab M ファイルとして作成されているため、JRE/CLR のトリックはありません...
編集:ファイルは、ネットワーク ドライブまたはローカル ファイルシステムの別の場所から直接移動/コピー操作によって直接入力に到着しています。このコピー操作は、おそらく別のアプリケーションではなく、人間のユーザーによって開始されます。
その結果、制御ファイルを追加したり、中間ステージング領域を使用したりする責任をファイルプロバイダーに負わせることはかなり困難です...
結論:これを行う簡単な方法はないように思われるので、ベルトとブレースのアプローチに落ち着きました。次の場合、ファイルは処理の準備ができています。
- そのサイズは一定期間変化しません。
- ファイルを読み取り専用モードで開くことができます (一部のコピー プロセスではファイルがロックされます)。
回答をくださった皆さん、ありがとうございました。
rest - REST リソースの変更を監視する RESTful な方法は何ですか?
他のクライアントからの変更や修正を監視したい REST リソースがある場合、最善の (そして最も RESTful な) 方法は何ですか?
そうするために私が持っていた1つのアイデアは、リソースが(まだ)存在しない場合にすぐに戻るのではなく、接続を開いたままにする特定のリソースを提供することです。たとえば、次のリソースがあるとします。
このリソースの「GET」は、対戦相手が動く番だと教えてくれるかもしれません。このリソースを継続的にポーリングして自分の番がいつ移動するかを確認するのではなく、移動番号 (たとえば 5) をメモして、次の移動を取得しようとする場合があります。
「通常の」REST モデルでは、この URL に対する GET リクエストは 404 (見つかりません) エラーを返すようです。ただし、代わりに、対戦相手が彼の動きをプレイするまでサーバーが接続を開いたままにした場合、つまり:
サーバーは、対戦相手がそのリソースに PUT したコンテンツを返すことができます。これにより、必要なデータが得られるだけでなく、対戦相手がポーリングを必要とせずに移動したときの一種の通知も得られます。
この種のスキームは RESTful ですか? それとも、ある種の REST 原則に違反していますか?
c++ - ポーリング イベント API の設計
C++ ウィンドウ ライブラリを設計しているとします。コールバック API を提供する場合と提供しない場合がありますが、プログラミングの関数型スタイルを容易にするためにポーリング API を提供する必要があります。
ポーリング API はどのようになりますか?
いくつかのオプション
SDL スタイル
州のスタイル
楽しい関数型疑似 C++ スタイル
C++ 以外の言語の回答は、興味深い洞察が得られる場合は問題ありません。
カプセル化についてのコメントはありません。はい、パブリック フィールドは実際にはアクセサーである必要があります。明確にするために省略しました。
python - Web サービスをポーリングする最良の方法 (Twitter アプリなど)
Web サービス (この場合は twitter の API) をポーリングする必要がありますが、このトピックに関する従来の知恵は何なのか疑問に思っています。これが重要かどうかはわかりませんが、これまでフィードバックは役に立ちました。
私が思いついたいくつかのシナリオ:
クエリ プロセスは X 秒ごとに開始されます。たとえば、cron ジョブは Python スクリプトを実行します。
プロセスは反復ごとに継続的にループしてクエリを実行します。終了しない Python スクリプトを実行するだけですか?
アドバイスありがとうございます。
ps - Twitter の詳細について: Twitter がフォローおよびダイレクト メッセージ用に電子メールを送信することは知っていますが、@replies を解析する柔軟性が必要になる場合があります。そのような場合、私はポーリングが得られるのと同じくらい良いと信じています.
pps - Twitter は、ボットを 60 分あたり 100 リクエストに制限しています。これにより Web スクレイピングや RSS フィードの読み取りも制限されるかどうかはわかりません。ホワイトリストに登録するのがどれほど簡単か、または難しいか知っている人はいますか?
再度、感謝します。
c - 私の単純なpoll()の例は部分的にしか機能しません
poll()
このプログラムは、ポート8888でTelnet接続を受け入れ、send()
を使用して各Telnetクライアントからメッセージを送信するrecv()
ことになっていますが、100%は機能しません。特定の接続は常に誰にでもメッセージを送信でき、プログラムは正常に機能しているようですが、メッセージを送信できないクライアントが少なくとも1人は常に存在します。すべてのクライアントは常に受信できます(pollは受信データを登録しません)。
このコードはそれ自体で実行されるため、ファイルに入れてコンパイルするとgcc -o app filename.c
、ポート8888でローカルホストにtelnetで接続し、機能しないことを確認できます。このコードはFedora用に書かれていますが、Linux固有以外のものを含めるべきではありません。どんな助けでも本当にありがたいです。
c# - C# アプリケーションからの更新のためのデータベースのポーリング
私は最初の「本物の」C# アプリケーションを作成しようとしています。これは、職場でのピア レビューのスケジュール設定に役立つ小さなペット プロジェクトです。
何か新しいことを実装するのに非常に多くのプロセス/官僚機構が関与しているため、また、管理者の目から離れて、私自身の時間に、当分の間、これを行っているという事実のために、私はこれを次のように書いています。このアプリケーションを同僚に展開する方法が制限されているため、MS Access MS Jet Engine バックエンド (つまり、access mdb ファイル)。
私の質問は、データベースを断続的にポーリングして、データベースから更新 (新しい要求されたレビュー、情報を要求している他の開発者からのメッセージなど) を取得するにはどうすればよいですか?
情報が必要な各フォームにタイマーをドロップし、更新が発生したときにすべてを更新する必要がありますか?
編集:
特にタイマーの実装方法に関するアドバイスを探しています。ワークステーションに物をインストールすることはできません。サーバー (ストレージ スペースの外部) にアクセスすることもできません。また、クライアントにはばかげた DoD 制限があるため、会社のセキュリティ要件のために、これを自分でホストすることはできません。
「フォームのタイマー」ソリューションは問題なく機能するため、とにかくこれを理解したと思います(明らかに必要ないため、CLIバージョンの2番目のソリューションが必要だと言ったときに何を考えていたのかわかりません.. もう遅い)。
ありがとう!
c - select() 呼び出しの残り時間
select()
Linux/ARM プラットフォームで使用して、udp ソケットがパケットを受信したかどうかを確認しています。select 呼び出しがタイムアウト前に返された場合 (パケットを検出した場合)、残りの時間を知りたいです。
次のようなもの:
asp.net - ASP.NET から長時間実行される Windows サービスをポーリングする
Windows サービス内で Lucene.NET を使用して、検索用にアプリのインデックスを再作成するアプリケーションがあります。管理セクションは、Lucene で完全な再インデックスをトリガーできます。現在、その進行状況を確認する唯一の方法は、ディスクに書き込まれたログ ファイルを使用することです。
これは不格好です。サービスをポーリングして、インデックスの再作成の進行状況を判断したいと考えています。
誰かがこれについて何か洞察を持っていますか?