問題タブ [agents]
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.
api - F# のエージェントを使用した Twitter ストリーム API
Don Syme ブログから ( http://blogs.msdn.com/b/dsyme/archive/2010/01/10/async-and-parallel-design-patterns-in-f-reporting-progress-with-events-plus -twitter-sample.aspx ) Twitter ストリーム リスナーを実装しようとしました。私の目標は、「信頼性の高いシステムを構築するときは、処理する前にツイートを保存またはキューに入れることが多い」という twitter api ドキュメントのガイダンスに従うことです。
したがって、私のコードには 2 つのコンポーネントが必要です。
- 各status/tweet jsonを積み上げて処理するキュー
- json 文字列のツイートをキューにダンプする Twitter ストリームを読み取るための何か
私は以下を選択します。
- 各ツイートを投稿するエージェントで、json をデコードしてデータベースにダンプします
- シンプルな http ウェブリクエスト
また、データベースへの挿入によるエラーをテキスト ファイルにダンプしたいと考えています。(おそらく、すべてのエラーに対してスーパーバイザー エージェントに切り替えます)。
2 つの問題:
- ここでの私の戦略は良いですか?私の理解が正しければ、エージェントはスマート キューのように動作し、そのメッセージを非同期的に処理します (キューに 10 人のユーザーがいる場合、1 番目のメッセージが終了してから 2 番目のメッセージが終了するのを待つのではなく、一度に多数のメッセージを処理します)。 ...)、 正しい ?
- Don Syme の投稿によると、しばらく前のすべてが分離されているため、StreamWriter とデータベース ダンプは分離されています。しかし、これが必要なので、データベース接続を閉じることはありません... ?
コードは次のようになります。
どうもありがとう !
プロセッサ エージェントを使用したコードの編集:
f# - Windows AzureとF#を使用したTwitterストリーミングAPIの記録と処理
1か月前、ここでF#エージェントを使用してTwitterStreamingAPIデータを処理および記録しようとしました。ちょっとした練習として、コードをWindowsAzureに転送しようとしています。
これまでのところ、私には2つの役割があります。
メッセージ(ツイートのjsonであるメッセージ)をキューに入れる1つのワーカーロール(パブリッシャー)。
キューからメッセージを読み取り、jsonをデコードし、データをクラウドテーブルにダンプする1つのワーカーロール(プロセッサー)。
これは多くの質問につながります:
- 労働者の役割を代理人と考えても大丈夫ですか?
- 実際には、メッセージは8 KBを超える可能性があるため、BLOBストレージを使用し、メッセージとしてBLOBへの参照を渡す必要があります(または別の方法がありますか?)。これはパフォーマンスに影響しますか?
- 必要に応じて、プロセッサワーカーロールのインスタンスの数を増やすことができ、キューが魔法のように高速に処理されると言うのは正しいですか?
これらすべての質問をドキドキさせて申し訳ありません、あなたが気にしないことを願っています、
どうもありがとう!
f# - F# エージェントを使用した Map Reduce
F# エージェントで遊んだ後、それらを使用して map reduce を実行しようとしました。
私が使用する基本的な構造は次のとおりです。
- その状態で実行するすべての作業をキューに入れ、マップ ワーカーから作業要求を受け取るマップ スーパーバイザ
- reduce スーパバイザは、reduce 作業の map スーパバイザと同じことを行います
- map と reduce を行う一連の map と reduce ワーカー。1 つの作業が失敗すると、それぞれのスーパーバイザーに送り返されて再処理されます。
私が疑問に思う質問は次のとおりです。
- これは、 PSeq を使用する (http://toasp.net/blog/fsharp-parallel-aggregate.aspx) のような、より伝統的な (まだ非常に優れた) マップ削減と比較して意味がありますか?
- map を実装してワーカーを削減する方法は醜いようですが、もっと良い方法はありますか?
- 1000 000 の map ワーカーと 1000 0000 の reduce ワーカーを作成できるようです笑、これらの数をどのように選択すればよいですか?
どうもありがとう、
clojure - Clojureで特定のエージェントを停止するにはどうすればよいですか?それらの状態はいつガベージコレクションされますか?
エージェントがClojureのバックグラウンドでキューを処理している場合、すべてのエージェントを停止せずにエージェントを停止するにはどうすればよいですか?
エージェントの処理が終了し、スコープから外れ、キューでの作業が終了した場合、最終状態とともにガベージコレクションされますか?
jms - メッセージ キャリアとしての XMPP と JMS の比較
ソフトウェア エージェント間でメッセージを交換するためのトランスポートとして、XMPP または JMS のいずれかを使用することを検討しています。(私は JADE エージェント システムを使用しています。)
私が解決しなければならない主な問題は、ファイアウォールの背後にある可能性のあるエージェントとの間でメッセージを送受信できるようにすることです。その目的で XMPP または JMS が優れていると考える理由はありますか?
agents - JADEの面白い使い方とは?
注目に値するJADEプロジェクトを探していますが、インターネット上でそのようなリストを見つけることができませんでした。誰か提供してくれませんか?
clojure - Clojureエージェントの質問-見送りを使用
次のコードについていくつか質問があります。
- アニメーション機能で-
#'
見送りでアニメーションの前に使用されるのはなぜですか? send-off
アニメーション機能の開始時に機能するのはなぜですか?アニメーション機能をもう一度開始して、repaintメソッドとsleepメソッドを実行しないでください。アニメーション関数を次のように記述することで、オリジナルと比較して不利な点はありますか?
/li>
agent - Objective-CまたはC++用のエージェント開発フレームワークはありますか?
JADeと同様ですが、Java用ではありません。そんなことありますか?
multithreading - Clojureのエージェントを使用したマルチスレッドバウンスボールプログラム
私はclojureでマルチスレッドのバウンスボールプログラムを作成しました。アニメーションスレッドを開始した後、私は-
跳ねるボールのスレッドを開始します。ボールは動かず、これはコンソールに表示されます-
誰かがここで何が起こっているのか指摘できますか?
scala - Akka フレームワーク (Scala) - 大規模で複雑な状態を格納するエージェント
私は最近 akka フレームワークを発見し、私のプロジェクトの 1 つにぴったりだと感じました。これまでのところ、私はそれに非常に感銘を受けていると言わなければなりません。
私のプロジェクトでは、100 万以上のエンティティが状態の更新を非常に高速に受け取る必要があります。当然、akka Actors が第一候補のようです。ただし、エージェントを使用して状態の更新を保存する方がよいのではないかと思います (これまでのところ、私のアクターには、状態を更新するためのメッセージとそれを読み取るためのメッセージの 2 つしかありません。変わることはありません)。
エージェントのいくつかの例を見ると、エージェントは大規模で複雑な状態を格納するためのものではないように感じます。私が間違っている?
要するに、次のようなものを保存したいと思います。
明らかに、状態の更新は、整数を使用するおもちゃの例よりもきれいではありません;)
それでは、エージェントを持つことは理にかなっていますか? これをどのように行うつもりですか?
回答ありがとうございます。
-LP