web service 学习 2 -- 什么时候应该使用web service

列举三种情况,将发现使用web service带来极大的好处。
  跨越防火墙的通信
    如果你的应用程序有成千上万的用户,而且他们都分布在世界各地,那么客户端和服务器之间的通信将是一个棘手的问题。那是因为客户端和服务器之间通常都会有防火墙或者代理服务器。在这种情况下,你想使用dcom就不是那么简单了,而且,通常你也不愿意把你的客户端程序发布到如此庞大数量的每一个用户手中。于是,你最终选择了用浏览器作为客户端,写下一堆asp页面,把应用程序的中间层暴露给最终用户。结果呢?运气好的话,只是开发难度大了一些,运气不好的话,就会得到一个根本无法维护的应用程序。当然。如果你的中间层组件是web service的话,你完全可以从用户界面直接调用中间层组件,从而省掉建立asp页面的那一步。要调用web service,你可以直接使用microsoft soap toolkit或.net这样的soap客户端,也可以使用你自己开发的soap客户端,然后把它和你的应用程序连接起来。这样做,不仅可以缩短开发周期,还可以减少代码的复杂度,并增强整个应用程序的可维护性。同时,你的应用程序也不再需要在每次调用中间层组件时,都跳转到相应的结果页了。
  应用程序集成
    企业级的应用程序开发者都知道,企业里经常都要把用不同语言写成的在不同平台上运行的各种程序集成起来,而这种集成将花费很大的开发的力量。通过web service,应用程序可以用标准的方法把功能和数据暴露出来,供其它的应用程序使用

   b2b的集成
     通过web service,你的公司可以把关键的商务应用暴露给指定的供应商和客户。用web service来实现b2b集成的最大好处在于可以轻易实现互操作性。只要把你的商务逻辑暴露出来,成为web service,你就可以让任何指定的合作伙伴轻松的调用你的商务逻辑,而不管他们的系统在什么平台上运行,使用的是什么开发语言。这样就大大减少了花在b2b集成的上的时间和成本。
  软件重用
    软件重用是一个很大的主题,它有很多的形式和程度。最基本的形式是源代码模块或者类一级的重用。另一种形式是二进制形式的组件重用。当前,像表格控件或用户界面控件这样的可重用软件组件在市场上都占有很大的份额。但这类软件的重用都有一个很严重的限制:重用仅限于代码,而数据不能被重用。原因在于你可以很轻易的发布组件甚至源代码,但要发布数据就没那么容易了,除非那些数据都是不会经常变化的静态数据。
    而web service允许你在重用代码的同时,重用代码后面的数据。使用web service,你不再像以前那样,要先从第三方购买、安装软件组件,再从你的应用程序中调用这些组件。你只需要直接调用远端的web service就可以了。
    另一种软件重用的情况是把好几个应用程序的功能集成起来。例如,你想要建立一个局域网上的门户站点应用,让用户既可以查询他们的联邦快递包裹,察看股市行情,又可以管理他们的日程安排,还可以在线购买电影票。现在web上有很多应用程序供应商,都在其应用中实现了上面的这些功能。一旦他们把这些功能都通过web service 暴露出来,你就可以非常轻易地把所有这些功能都集成到你的门户站点中,为用户提供一个统一的、友好的界面。用web service来集成各种应用中的功能,为用户提供一个统一的界面。
  什么时候不应该使用web service
    单机应用程序:只要用本地的api就可以了。com非常适合于在这种情况下工作,因为它既小又快。运行在一台服务器上的服务器软件也是这样:最好直接用com或其他本地的api来进行应用程序间的调用。当然web service 也能用在这些情况下,但那样不仅消耗太大,而且不会给你带来任何好处。
    局域网上的同构应用程序
  总结 

  web service是创建可互操作的分布式应用程序的新平台。web service 的主要目标是跨平台的可互操作性。为了达到这一目标,web service 是完全基于xml、xsd等独立于平台、独立于软件供应商的标准的。 

  web service在应用程序跨平台和跨网络进行通信的时候是非常有用的。web service适用于应用程序集成、b2b集成、代码和数据重用,以及通过web进行客户端和服务器的通信的场合。 
  只要把你的商务逻辑暴露出来,成为web service,你就可以让任何指定的合作伙伴轻松的调用你的商务逻辑(可以为不同的用户发布不同的应用程序功能,而不用为每个用户设定各自的防火墙),而不管他们的系统在什么平台上运行,使用的是什么开发语言。

    

posted on 2006-03-02 21:53  无心三立  阅读(203)  评论(0编辑  收藏  举报

导航