Questions tagged «messaging»

1
Akka是否淘汰了JMS / AMQP消息代理?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 4年前关闭。 我花了最后一周深入研究Akka文档,最终了解了什么是actor系统,以及它们解决的问题。 我对传统的JMS / AMQP消息代理的理解(和经验)是,它们存在以提供以下功能: 生产者和消费者之间的异步处理;和 消息传递保证,包括持久性,重试和回退 但是,如果没有所有必需的基础架构和运营开销,Akka是否可以提供此服务? 在Akka中,所有Actor通信都是异步且无阻塞的。和 在Akka中,SupervisorStrategies存在完成重试,后备和升级的功能。如果也需要的话,可以将Actor配置为持久存储到几乎任何类型的商店。 因此,这让我感到奇怪:如果我的应用程序使用Akka,是否需要将JMS / AMQP代理(例如ActiveMQ,RabbitMQ,Kafka)带入图片?换句话说,是否曾经有过这样的用例,那就是基于Akka的新应用程序还需要引入新的 JMS / AMQP代理集群?为什么或者为什么不? 唯一的论点是,也许我的Akka应用程序必须与另一个系统集成。但是在那种情况下,Akka-Camel模块使Akka可以利用Camel详尽无穷的,几乎无限的集成功能列表(TCP,FTP,ZeroMQ,这个列表不胜枚举……)。 有什么想法吗?

1
为什么Akka被推销为反应性产品?演员模型有反应性吗?
据我了解,Actor模型和反应式编程是独立的概念。演员模型似乎并不是天生对我有反应。 但是,作为参与者模型实现的Akka框架被描述为反应性的: “ Java和Scala程序逻辑存在于轻量级的Actor对象中,该对象以反应方式发送和接收消息。” “我们反应活跃” 是滥用术语还是完全正确?是否有任何参与者模型实现(例如Erlang)已经做出反应?仅仅生成消息作为对其他消息的响应也被认为是反应性的吗? 对比方法的一些相关阅读: StackOverflow:RX vs消息队列,例如Rabbitmq或zeromq? CS.SE:函数式反应性编程和Actor模型如何相互关联? Lambda Ultimate:演员与反应对象

2
如何确定消息是命令消息还是事件消息?
两种企业集成模式是命令消息和事件消息。我正在开发一个系统,在该系统中,我们不仅使用消息传递与其他系统集成,还使用服务之间的内部通信。它应该是一个最终一致的系统,并且服务应该彼此一无所知(几个特殊用途的服务除外)。因此,我们尽量避免感觉像是远程过程调用(RPC或RPI)。我们有一个面向总线和面向消息的中间件系统,并且所有消息都被广播。 我们倾向于将消息命名为事件,即过去完美的短语,例如PurchaseOrderShipped。但是,通常仅在某些其他服务需要了解事件时才添加事件,并且一开始通常只关心一个服务。而且,有时该服务会发出一个结果,该事件会被第一个服务侦听。因此,如果我要绘制交互关系图,则它看起来更像是上面链接中的命令消息图(甚至是RPC图),而不是事件消息图,尽管这实际上并没有实现直接消息传递,但在公交车上广播。另外,我最近看到有一些消息被添加为命令,即命令中的短语,例如BillShippedPurchaseOrder。 奇怪的是,消息的名称及其传递方式不会通过将其命名为事件还是命令而改变。那么,如何确定某个东西应该是命令消息还是事件?这仅仅是语义和命名的区别,还是命令和事件消息之间的实际实现区别?既然我们所有的消息都是广播的,那是否意味着没有一个是真正的命令消息?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.