SOA服务发现(UDDI)如何在实践中发挥作用?

时间:2008-09-24 11:59:13

标签: architecture soa uddi

我只是在阅读SOA,并定期提到服务注册表/ UDDI。听起来不错,但现实中如何使用?

  • 注册表是否意味着将逻辑服务与其物理实现(端口,URL等)分离?
  • 注册表是否意图由寻找有趣服务的人浏览?
  • 硬线连接是否“错误” 应用     它使用的服务?

3 个答案:

答案 0 :(得分:9)

我发现它在理论上比实用更有用。它很少被实施并且很少使用。实际上,DNS为网络上的资源位置提供了足够的抽象工具。

答案 1 :(得分:4)

服务注册表存储和发布有关所有可用服务的信息,主要是它们的接口描述及其当前URI(ip,端口等等)。这样,应用程序可以简单地向注册表询问所需的服务,并获取适合的服务实现的详细信息,并且可以连接。

UDDI不是获取服务注册表的唯一方法。但请记住,UDDI仅用于Web服务,因此只有在您的SOA仅包含Web服务时才有用。

1)正确。

2)不,它不是真正意义上的人眼。当然,有一些工具可以浏览目录,但它们主要用于查看注册表是否获得了您需要的服务等。实际使用情况直接发生在您的应用程序/服务和注册表之间。

3)这取决于你想要完成的事情。如果你想构建一个SOA,它认为它是“错误的”,因为这与SOA的松散耦合范式相矛盾。 如果这是您唯一的服务,唯一使用它的应用程序,并且服务可能不会更改它的URI,那么在硬连接中肯定没有问题 - 但是之后没有必要将此服务分开:)

答案 2 :(得分:1)

如何使用多播来卸载服务?喜欢使用jgroups还是SLP?所有服务将相互发现并将他们需要的服务注入代理。然后构建实际传输实现的抽象。 (例如休息,肥皂,rmi)