异步消息
2016-10-31 本文已影响49人
迷糊_
异步消息有两个主要的概念:消息代理(message broker)和目的地(destination)。当一个应用发送消息时,会将消息交给一个消息代理。消息代理可以确保消息被投递到指定的目的地,同时解放发送者,使其能够继续进行其他的业务。
消息系统会提供不同的消息路由模式,通用的两种目的地:队列(queue)和主题(topic)。每种类型都与特定的消息模型相关联,分别是点对点模型(队列)和发布/订阅模型(主题)。
点对点消息模型:每一条消息都有一个发送者和一个接收者。虽然队列可以有多个接收者,但每条消息只能被一个接收者取走。
发布—订阅消息模型:消息可以被所有监听一个主题的接收者收到。
同步同学机制访问远程服务的客户端存在几个限制:
同步通信意味着等待。当客户端调用远程服务的方法时,它必须等待远程方法结束才能继续执行。如果客户端与远程服务频繁通信,或者远程服务响应很慢,就会对客户端应用的性能带来负面影响。
客户端通过服务接口与远程服务相耦合。如果服务的接口发生变化,此服务的所有客户端都需要做相应的改变。
客户端与远程服务的位置耦合。客户端必须配置服务的网络位置,这样它才知道如何与远程服务进行交互。如果网络拓扑进行调整,客户端也需要重新配置新的网络位置。
客户端与服务的可用性相耦合。如果远程服务不可用,客户端实际上也无法正常运行。