問題タブ [anyevent]
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.
perl - AnyEvent タイマーの質問
タイマーを「見える」ようにするにはどうすればよいですか? この例は (常にスリープ時間とは無関係) を返します (スリープ時間2
に似たものを期待していました)。
perl - AnyEvent イベント キューを表示する方法はありますか
を使用して非同期的に記述された Perl プロジェクトに取り組んでいAnyEvent
ます。テスト中に、コードのバグにより、テストが完了した後にブロックされたコードが呼び出されたため、テストは成功したように見えたが、ブロックされた呼び出しが後で他のテストを汚染するという状況がありました。
私が望んでいるのは、テストの分解ですAnyEvent
。他のブロックされた呼び出しを待っていないことを確認してください。AnyEvent
まだ実行されていない呼び出しがあるかどうかを確認することは可能ですか?
perl - AnyEvent の下で優れたオブジェクト指向コードを作成する
モジュールで構成される複雑なロジックを持つ大規模なアプリケーションを構築しています。私は以前、より単純なメソッドのより大規模なメソッドを構築していました。たとえば、
(これはもちろん単純化されています)。結果が返され、例外がスローされ、誰もが幸せになります。
現在、AnyEvent に移行しています。私のモジュールは最上位レベルではないので、単に行うことはできません
これまでに見たほとんどの AE モジュールは次のように機能します。
だから私は下位レベルのメソッドを書き直して、highlevel() を進めようとしました...
正確には美しくありません。私はそれを「無限のはしご」と呼んでいます。
次に思いついたのは、highlevel() が _highlevel_stage1()、_highlevel_stage2() などに分割されたアドホック ステート マシンでした。ステージXXの代わりに名前を付けると頭痛がします)。
私たちはすでにアプリ全体を駆動する本格的なステート マシンを検討していますが、すべてのインタラクションにトランジションを追加する必要があるのは、私には少し寛大すぎるように思えます。
質問は、AnyEvent アプリ (図 3) 内で実行するビジネス ロジック (図 1) を実装するモジュールを作成するためのベスト プラクティスは何ですか?
perl - AnyEvent::Twitter::Stream API を使用してスクリプトを再開する
OAuth 認証で cpan ライブラリ AnyEvent::Twitter::Stream を使用してツイート クローラーを実行しましたが、いくつかの問題が発生しています。Twitter がストリーミング API を介したツイートの送信を停止することがあります。次に、プログラムをしばらくスリープ状態にします。その後、さらにツイートを収集するためにプログラムが復帰するはずですが、これは行われません。スクリプトは再接続を試み続けますが、接続を確立できません。どうなり得るか?私のコードを以下に示します。
みんなのおかげで、
チアゴ
perl - AnyEvent::XMPP を使用してチャット ルームでユーザー jabber ID を取得するにはどうすればよいですか?
ドキュメントによると、チャットルームでユーザーのニックネーム (roomName@domain.com/nick) を取得する方法がありますが、ユーザーの実際の jid (name@domain.com/resource_name) を取得するにはどうすればよいですか? XMPPプロトコルに従って可能ですか?
multithreading - スレッド、Coro、Anyevent 混乱
私は比較的 perl に不慣れで、perl でのスレッド化についてはさらに新しいです。3 つの異なるソースから入力を受け取る perl スクリプトがあります。(2 つの LDAP クエリと、常にそこにあるとは限らないファイル) 一部の部分は他の部分よりも時間がかかる可能性があるため、スレッドとキューを使用することにしました。開発中、スクリプトの個々のコンポーネントのテストは非常にうまく機能しましたが、すべてをまとめた後はパフォーマンスが低下したようです。
基本的な構造は、この 2 つのスレッドです:(ファイルの読み取りまたは AD エントリの読み取り) -> Queue1 -> 2 つのスレッド:(データのスクラブ) -> Queue2 -> 3-4 スレッド (既存のローカル LDAP エントリと比較)。いくつかのスレッドが統計をメイン スクリプトに報告し、すべてのスレッドが完了すると、その実行のすべての統計とステータスが記載された電子メールが送信されます。
私は dequeue_nb を使用していますが、それは役立つと思いましたが、うまくいきませんでした。
パフォーマンス ヒットは待ち行列に入っているようです。パフォーマンスを改善するためのヒントを探しているときに、perl スレッドは良くなく、coro、POE、Anyevent、IO:async などを使用するといういくつかの記事に出くわしました。
これは「イベント」の問題のようには見えないので、AnyEvent や POE が私が見ているものから通り抜ける方法になるとは思いませんでした.coros は一度に 1 つの CPU しか使用しないようですので、よくわかりませんこれはどちらでも機能します。組み合わせて使おうと思ったのですが、頭が痛くなりました。私のスクリプトを修正/トラブルシューティングする方法、または他のモジュールのいずれかを実装する方法についての提案はありますか?
perl - プロキシを使用したPerlAnyEvent::HTTPリクエストが失敗する
次の投稿に従って、perlモジュールAnyEvent :: HTTPを使用して非同期HTTPリクエストを作成してみました:http ://www.windley.com/archives/2012/03/asynchronous_http_requests_in_perl_using_anyevent.shtml
ただし、プロキシを介して機能させることはできません...
上記のコードで次のエラーが発生します(プロキシの認証の詳細に置き換えた後)
リクエストのプロキシ引数がなくても機能します。CPANページからhttp://metacpan.org/pod/AnyEvent::HTTP、
595-接続確立中のエラー、プロキシハンドシェイク
このコードの問題を特定するのを手伝ってください。ありがとう!
perl - Dance アプリケーションで AnyEvent を実行する
追跡している数千台のマシン (自分のマシン) に対してノンブロッキングSSHを実行したいと考えています。Dancerアプリケーションを稼働させており、AnyEvent::timerを使用してSSHを実行したいと考えています。コマンドを非同期に実行します (各マシンには独自のポーリング間隔があり、あるマシンが別のマシンでSSH作業が完了するまで待機する必要はありません)。
同期環境で非同期に動作する最良の方法は何ですか?
perl - Threads から AnyEvent にコードを書き直す
私はコードを書きました:
しばらく作業した後、物理ストレージがいっぱいになりました。AnyEvent で書き直すのを手伝ってくれませんか。試しましたが、コードが機能しませんでした。いくつかのメモリを保護するのに役立つと読みました。ヘルパーに感謝します。