1
4
SOA是一套高级软件架构指导原则。它不是技术标准或建议,与技术实现细节(如负载平衡)无关。 负载平衡是基于寻址的,它依赖于服务访问技术。 以“SOA方式”构建的系统可能使用不同的服务访问技术,例如SOAP(通过HTTP、JMS等)、REST、通过JMS的异步XML消息等。 使用SOAP,服务使用者可以查找UDDI注册中心来定位服务提供者。一些最新的UDDI注册软件提供了简单的(例如循环)负载平衡。 另一个SOAP想法是使用WS-Addressing,但它实际上并不用于负载平衡。 我认为目前负载平衡的最佳位置是底层网络传输层。通过HTTP传输,您可以选择硬件或软件(例如,ApacheHTTPD模块)负载平衡器,它们可以根据响应时间和超时调整分发。使用JMS传输,最流行的JMS服务器提供某种形式的负载平衡。其他协议(如CORBA或集合)通常需要自定义解决方案。 您还可以使用ESB软件,例如Oracle服务总线或Tibco AMX服务总线。使用ESB,您可以轻松地为服务实例创建负载平衡代理。代理可以通过一些逻辑进行增强,比如查找数据库表以获取指导。 正如您所看到的,没有一个适合所有服务负载平衡的解决方案。最佳解决方案将基于实际的实现架构和供应商的建议。 |
2
0
在读了很多书之后,我实际上在寻找的概念是 Enterprise Service Bus ESP . 虽然它没有显式定义一个显式协议,但它定义了一种体系结构样式,允许解决我上面提到的问题。 |