在企业级SOA中使用Web服务
还可以封装没有 MRP 组件的应用程序,这样就可以向 MRP Web 服务发送请求。Visual Studio 对于您来说,使用 Visual Studio .Net 比 Visual Basic、C++、Java、Kornshell 来封装 Unix 应用程序为 COM 组件要更加容易。
当 Web 服务不受组织所控制时,需要确保它们在外部可以彼此互操作,来共享语义和契约职责。语义的误解(例如所有权)和契约漏洞(例如多平台间的区别)会影响外部企业 Web 服务之间的互操作性问题。
在本文中,我展示了四个实现制造资源规划 (Manufacturing Resource Planning,MRP) 和客户关系管理 (Customer Relationship Management,CRM) 服务的实例,如下所示:
企业以前的应用程序
到外部 Web 服务的动态链接
请求外部 Web 服务的 REpresentational State Transfer/Simple Object Access Protocol (REST/SOAP) 共存
使用 IBM?WebSphere? Application Server 和 Microsoft? Visual Studio .Net 的 Web 服务互操作性
考虑各种交易时,确定系统可以负载的可互操作的 SOA 的数量非常重要,这样可以避免 SOA 过载。
企业以前的应用程序
假设企业以前的应用程序(参见图 1)被分成业务流程的模块化组件。该应用程序的两个重要组件(MRP 和 CRM)要求不断发生变化且重新编译长期运行的应用程序。
图 1. 企业以前的应用程序
动态服务链接
为增加运行效率,从应用程序中提取出这些组件并将其重新构建为外部 Web 服务更有意义。通过这种方式,您可以更改两个 Web 服务的代码,而不用重新编译庞大的、复杂的长期运行的应用程序。
在第一个 SOA(参见图 2)中以更加紧凑的形式重新设计的应用程序可以动态链接到第二个 SOA 中的外部企业 MRP Web 服务,依次的,指向第三个 SOA 中的外部企业 CRM Web 服务。一旦收到请求,CRM Web 服务将请求和信息发送给应用程序来进行进一步处理。
- 本文关键词:

