【发布时间】:2014-02-13 09:53:22
【问题描述】:
在我的公司,我们开始使用网络服务。我的计划是通过 2 个协议 http 和 jms 提供对服务的访问。对服务的任何外部访问(公司网络之外的客户端)通常都通过 http 和 json 通过一个 restful URL,但在内部如果服务需要调用另一个服务,它将通过 jms 来完成,主要是为了将服务彼此分离。
我的问题如下
camel 能否提供抽象,以便我可以编写没有 http、json 和 jms 依赖项的服务代码?我希望骆驼通过一些中介来处理 http 到 java、json 到 java 和 jms 到 java 的转换,并且我的服务的调用应该简单地通过一个接受 java 对象作为请求的 java 方法。请记住,虽然 http 是同步模型,但 jms 必须模拟请求-响应。如果是的话,请您指出一个演示此设置的示例。
同样,我希望 camel 将来自我的服务(可能是一个 java 对象)的响应转换为 json 并将响应返回给客户端。
最后,我如何在此模型中进行缩放。对于 JMS,很容易启动多个实例并让它们监听一个队列。我如何利用相同的实例跨 http 接口进行负载平衡?我希望服务具有位置透明性,因此,他们不必关心调用“jms”特定集群与“http”特定集群?
【问题讨论】:
标签: java apache-camel