Articles of 消息队列

workerj队列的工作?

我正在开始使用节点的集群API和mongoose为节点写一个工作队列。 我注意到有很多libs已经这样做,但使用redis和fork。 是否有一个很好的理由与使用群集API分叉? 编辑 ,现在我也发现这个: https : //github.com/xk/node-threads-a-gogo – 太多的select! 我宁愿不添加redis,因为我已经使用了mongo。 另外,我的要求是非常宽松的,我想要坚持,但可以没有它的第一个版本。 问题的第二部分:今天最稳定/使用的nodejs工作队列库有哪些?

Node.js的进程间事件发送器?

目前,我在应用程序中使用EventEmitter2作为消息总线,我非常喜欢它。 无论如何,现在我需要一个消息总线,它不仅在进程中工作,而且还在进程之间。 我理想的候选人会… …与EventEmitter2(一个“插入replace”)API兼容, …没有专门的服务器或外部服务(如数据库,消息队列等),仅使用操作系统资源, …用纯JavaScript编写, …在内存中运行,所以它不需要持久性。 我不需要的东西: 它不需要在Windows上运行,OS X和Linux都可以。 如果它只能在一台机器上运行,那就没有必要了。 任何想法或提示? PS:如果你可以推荐一个可用的产品,那也挺好的,但是如果你能指出我自己如何做无服务器的东西,那也没关系。

实施可伸缩聊天服务器的策略

我正在寻找实施某种聊天服务器。 我希望它能够扩展。 这似乎是一个很大的问题,所以我想我希望答案是方向指针,有点探索性。 最终用户客户端是networking或电话客户端。 我认为某种websocket的实现,比如Socket.IO很好。 在服务器端,我希望使用Node.js. 我希望架构能够扩展,以便用户数量不受限制(在理性的情况下,没有预料到大规模攻击的可能性,如果是这样,有更聪明,有经验的人在其上工作的机会是合理的而不是目前只是我编码)每个聊天室的用户数量有希望不受限制,或者可能是一些固定的大数目。 这意味着我需要使用几个在Node中编写的服务器水平扩展。 假设有一些负载平衡器(希望将来不是单点失败,但我不知道如何实现这一点,或者也许只是转移到AWS)将调度从最终客户端到聊天服务器的SocketIO连接。 不同的用户连接到不同的服务器可能在同一个房间,所以这些消息需要发送到其他服务器。 我将如何切实执行这样的事情? 希望不要太复杂。 问题:(1)如果所有的服务器需要处理所有的消息,因为用户可以通过任何服务器login,这是否规模? (2)我需要某种消息队列让服务器在它们之间进行交谈吗? Rabbitmq的Pub-sub是否可用? 或者,如果zeromq,我将如何扩大酒吧子? Zeromq指南解释了使用REQ / REPtypes的应用程序扩展到多个服务器的情况。 但不是Pub Sub。 (3)或者我应该从XMPP开始? 我希望能够尽可能地简化工作。

节点的JS工作人员 – 任何需要他们?

原谅我的无知,但来自Django / Python的背景,我可以看到有一个Celery队列在后台较慢的过程中工作,同时尽可能快地更新Web界面的巨大好处。 但是,在Nodeasynchronous工作的情况下,队列系统的用例是否会大大减less呢? 例如: 1 – 用户向网站发帖,2 – 网站回应,然后邮寄给pipe理员。 在Django中,您将发送pipe理邮件到任务,稍后执行,然后响应请求。 芹菜在后台发送邮件。 在节点中,你打电话给你的邮件,然后回应请求。 然后邮件发送一个回叫说或不,用户已经看到这个回应。 那么,为什么我会用Node的队列呢? 我在猜测什么时候事情比这更复杂 – 似乎对于交易邮件这样的微不足道的事情来说,这是没有必要的。 还是我误解它是如何工作的?