问题标签 [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 文档的指导,该文档说“在构建高可靠性系统时,通常应该在处理之前保存或排队推文”。
所以我的代码需要有两个组件:
- 堆积并处理每个状态/推文 json 的队列
- 读取 twitter 流的东西,该流将 json 字符串中的推文转储到队列中
我选择以下:
- 我发布每条推文的代理,它解码 json,并将其转储到数据库
- 一个简单的http请求
我还想将插入数据库的任何错误转储到文本文件中。(对于所有错误,我可能会切换到主管代理)。
两个问题:
- 我的策略在这里有用吗?如果我理解正确,代理的行为就像一个智能队列并异步处理它的消息(如果它的队列中有 10 个人,它将一次处理一堆,而不是等待第一个完成然后第二个等...), 正确的 ?
- 根据 Don Syme 的帖子,while 之前的所有内容都是隔离的,因此 StreamWriter 和数据库转储是隔离的。但是因为我需要这个,所以我从不关闭我的数据库连接......?
代码看起来像:
非常感谢 !
使用处理器代理编辑代码:
f# - Twitter Streaming API recording and Processing using Windows Azure and F#
A month ago I tried to use F# agents to process and record Twitter StreamingAPI Data here. As a little exercise I am trying to transfer the code to Windows Azure.
So far I have two roles:
One worker role (Publisher) that puts messages (a message being the json of a tweet) to a queue.
One worker role (Processor) that reads messages from the queue, decodes the json and dumps the data into a cloud table.
Which leads to lots of questions:
- Is it okay to think of a worker role as an agent ?
- In practice the message can be larger than 8 KB so I am going to need to use a blob storage and pass as message the reference to the blob (or is there another way?), will that impact performance ?
- Is it correct to say that if needed I can increase the number of instances of the Processor worker role, and the queue will magically be processed faster ?
Sorry for pounding all these questions, hope you don't mind,
Thanks a lot!
f# - 使用 F# 代理 Map Reduce
在玩过 F# 代理后,我尝试使用它们来减少地图。
我使用的基本结构是:
- 地图主管将所有工作排队在其状态下完成并接收来自地图工作人员的工作请求
- reduce 主管与 map 主管做同样的事情来减少工作
- 一组 map 和 reduce 工作人员,如果其中一个工作失败,则将其发送回各自的主管进行重新处理。
我想知道的问题是:
- 与使用 PSeq 的更传统(但非常好)的 map reduce (http://tomasp.net/blog/fsharp-parallel-aggregate.aspx)相比,这是否有意义?
- 我实现地图和减少工人的方式看起来很丑,有没有更好的方法?
- 好像我可以创建一个 1000 000 地图工人和 1000 0000 减少工人大声笑,我应该如何选择这些数字,越多越好?
非常感谢,
clojure - 如何停止 Clojure 中的特定代理?他们的州什么时候收集垃圾?
如果代理在 Clojure 的后台处理其队列,我如何在不停止所有代理的情况下停止它?
当我完成一个代理并且我让它超出范围并且它完成了它的队列工作时,它是否与它的最终状态一起被垃圾收集?
jms - XMPP 与 JMS 作为消息载体
我正在考虑使用 XMPP 或 JMS 作为在软件代理之间交换消息的传输。(我正在使用 JADE 代理系统。)
我需要解决的主要问题是能够从/向可能位于防火墙后面的代理发送或传递消息。是否有任何理由认为 XMPP 或 JMS 更胜一筹?
agents - JADE 有哪些有趣的用途?
我正在寻找值得注意的JADE项目,但我无法在 Internet 上找到这样的列表。有人可以提供一些吗?
clojure - Clojure 代理问题 - 使用发送
我对以下代码有几个问题:
- 在动画功能中——为什么
#'
在发送动画之前使用? - 为什么
send-off
动画功能开始时起作用?它不应该只是再次启动动画功能并且从不执行重绘和睡眠方法吗? 与原版相比,将动画函数编写为:
/li>
agent - 是否有针对 Objective-C 或 C++ 的代理开发框架?
像JADe,但不适用于 Java。有这样的事吗?
multithreading - 在 Clojure 中使用代理的多线程弹跳球程序
我在 clojure 中编写了一个多线程弹跳球程序。启动动画线程后,我做-
启动弹跳球螺纹。球不动,这显示在控制台上 -
有人可以指出这里发生了什么吗?
scala - Akka 框架 (Scala) - 存储大型复杂状态的代理
我最近发现了 akka 框架,并觉得它非常适合我的一个项目。我必须说到目前为止我对它印象深刻。
在我的项目中,我需要让 100 万多个实体以非常快的速度接收状态更新。自然,akka 演员似乎是首选。但是,我确实想知道是否最好使用代理来存储状态更新(到目前为止,我的演员只有两条消息——一条用于更新状态,另一条用于读取状态——我不相信这会永远改变)。
查看代理的几个示例,我感觉它们并不意味着存储大型复杂状态。我错了吗?
简而言之,我想存储类似的东西:
显然,更新状态变得不如使用整数的玩具示例那么漂亮;)
那么有代理有意义吗?你会怎么做呢?
感谢您的回答!
-LP