加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 什么时候不应该使用Web服务?

发布时间:2020-12-15 19:13:51 所属栏目:asp.Net 来源:网络整理
导读:使用Web服务通常是一个很好的架构方法。并且,随着.Net中WCF的出现,它变得更好了。 但是,根据我的经验,一些人似乎认为Web服务应该总是在数据访问层中用于调用数据库。我不认为web服务是通用的解决方案。 我想用几十个用户的较小的内部网应用程序。 Web应
使用Web服务通常是一个很好的架构方法。并且,随着.Net中WCF的出现,它变得更好了。

但是,根据我的经验,一些人似乎认为Web服务应该总是在数据访问层中用于调用数据库。我不认为web服务是通用的解决方案。

我想用几十个用户的较小的内部网应用程序。 Web应用程序及其Web服务部署到一个Web服务器,而不是Web服务器场。今后不会有另一个网络应用程序可以使用这个特定的Web服务。在我看来,调用Web服务的成本不必要地增加了Web服务器的负担。对进程间调用的性能影响。维护和调试Web应用程序和Web服务的代码更复杂。所以是部署。我只是看不到在这里使用Web服务的优势。

可以通过创建两个版本的Web应用程序,有和没有Web服务,并做压力测试,但我没有做到这一点。

你对使用网络服务的小规模网络应用程序有意见吗?任何其他场合,当Web服务不是一个好的建筑选择?

解决方法

Web服务是数据访问的一个绝对可怕的选择。这是一个开销和复杂性几乎零利益。

如果你的应用程序要在一台机器上运行,为什么拒绝它进行数据访问调用?我不是说从你的UI代码直接访问数据库,我说的是抽象你的仓库,但仍包括他们的程序集在你的运行网站。

有些情况下,我推荐Web服务(我假设你的意思是SOAP),但主要是为了互操作性。

服务的粒度在这里也是问题。 SOA意义上的服务将封装操作或业务流程。数据访问方法只是该过程的一部分。

换一种说法:

- someService.SaveOrder(order);  // <-- bad
    // some other code for shipping,charging,emailing,etc

  - someService.FulfillOrder(order);  //<-- better
    //the service encapsulates the entire process

Web服务为Web服务的目的是不负责任的编程。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读