将MongoDB与OpenESB集成

时间:2010-12-14 10:50:19

标签: mongodb soa

我的任务是使用OpenESB调查MongoDB与SOA的集成。

从我到目前为止所读到的内容来看,在我看来,MongoDB或OpenESB都不支持这种开箱即用。我会假设OpenESB上的某些插件是必要的,以便向Mongo发送请求(而Mongo是一个数据库,它实际上没有JDBC驱动程序,因为语义不匹配)。

相对较新的SOA概念,我会很感激一些指针,指向优秀文档/文章的链接等等。

2 个答案:

答案 0 :(得分:1)

服务导向不是关于技术,而是关于设计。我可以毫无疑问地在SOA中使用这些技术,但它们只是实现选择。以同样的方式,Java,.NET可以作为应用程序的实现选择。

回到你的问题,MongoDB是一个持久性存储,所以在SOA中,它会位于一个服务层后面,可以保护上游用户免受这个事实的影响,你可以在以后将其推出有用的,受欢迎的,持久的商店和用户将不是更明智的。

对于OpenESB来说,ESB是一种可用于实现面向服务的某些方面的模式,即路由,发布/订阅,消息转换等。您的实现选择只是OpenESB,所以做同样的事情,屏蔽稳定界面背后的实施选择。

我现在实现这些接口的最好方法是创建以能力为中心的接口,即专注于不在何处的接口。

以下是如何使用WCF构建SOA的一些实际示例,我意识到.Net可能不是您的实现选择,但原则与SOA原则一样。

我建议您阅读Thomas Erl和Roger Sessions撰写的文章,这将使您能够掌握SOA的全部内容。

Building a SOA

SOA Design Pattern

Achieving integrity in a SOA

Why your SOA should be like a VW Beetle

SOA explained for your boss

WCF Service Performance

答案 1 :(得分:0)

您需要为openesb创建MongoDB组件。

1>创建用于集成的wsdl服务。 2> java pojo将使用java-driver-for-mongo-db。

此组件将是通用的,通信将通过带有XML负载的wsdl调用进行。

要进行转换,可以使用xsl。