网站优化HTTP应用

基于网络应用开发的HTTP的应用开发越来越多,在分布的处理环境中也有越来越多的技术出现,关键是什么场景应用什么技术还是比较关键的.

我们先看看在分布式技术中常见的几种技术,web service,remoting,SOCKET等,在.NET平台下用的比较多的可能还是WEB SERVICE吧

以上的技术其实基本上是通讯层面,利用这些技术完成数据的通讯交换.以达到把任务分布到多台计算机上,然后中央处理机获取到返回的数据

后集中处理,或异步方式来完成业务的功能需要.

OK,那我们把他们分别进行描述下.

WEB SERVICE:从表面上看,Web service 就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API。这就是说,你能够用编程的方法通过Web来调用这个应用程序。我们把调用这个Web service 的应用程序叫做客户。调用者通常只需要引用这个接口,按接口的规范就可以获取到自己想要的数据了.

WEB SERVICE在.NET平台上一直会被认为是性能不高,并发数低等,因为WEB SERVICE用的是SOAP协议来传输调用,有它先天的一点不足.当然可以对传输的数据进行压缩减少网络包的大小,但在实际的大快业务数据处理的时间还是会很慢的.好处就是方便,而且可以在不同的平台进行互操作.

remoting:remoting是基于.NET平台的另一个分布式技术,基于远程调用,客户端与缩主机间交互数据的通讯技术,这种技术在企业级的大型应用多些,有二个好处,一个处理并发能力可以走TCP协议,比远程的HTTP性能高些.二可扩展性也强些,可以穿过防火墙.但只能在.NET平台下使用.

SOCKET:也是在通讯产品中常用的一种分布式数据,应用很广,特别是像网游这类应用.不管是TCP,还是UDP方式,在处理的性能问题上完全依懒开发人员的自身的经验和水平,它的可控性强些.

完成是由开发人员发挥,现在的各大平台都有相应的API支持.

还有一个是WCF,它是使用托管代码建立和运行面向服务应用程序的统一框架,从功能的角度来看,从功能角度来看WCF完全可以看作是ASMX,.Net Remoting,Enterprise Service,WSE,MSMQ等技术的并集,利用WCF,就可以解决包括安全、可信赖、互操作、跨平台通信等等需求。开发者再不用去分别了解.Net Remoting,ASMX等各种技术了。

MSMQ,它是微软一个消息队列组件,负责数据的交换,组件本身是支付并发,也支持LOG,在异构系统中应用比较多些.特别那些基于消息事件应用是一个不错的选择.
接下来我要说的不是上面的技术,上面的技术我想大家都有所了解,我们要清楚的认识到什么是数据,什么是通讯,在分布式系统开发需要认清这二点,数据的处理,数据的通讯.

那么对于分布系统间还存在一个问题就是,数据交换通讯协议,A机器是专门用于给用户查询用的,B机器是一个专门用于数据查询的服务.A机器想从B机器上查到01年的销售数据.A如何能让B知道它

想要什么,这个时间就要定义双方的协议,也就是数据交换的方式,会话的标准.

建立数据交换标准,现在用的比较多的用这么三种,分别是XML,JSON,二进制.用XML描述语言的还是比较多,JSON是最近这一段时间用的比较多的,XML太大,传数的数据包大,而用JSON STRING可以被JAVASCRIPT很好的处理,二进制一般用于通讯要求比较高,通讯资源比较紧的应用,像在手机传输上.

企业在做接口服务时,也是需要根据对方的商业要求,比如移动它用的XML交换多些,那就需要定义XML的通讯协议包了.所以技术的选择不是单方面的.

采用那一种传输技术那就要看应用环境的场景了.有些客户它不用WEB SERVICE,但采用SOCKET的话觉的麻烦.那怎么办呢?我们来看看XML(JSON)+HTTP的应用吧.

 http://www.cnblogs.com/Leung/archive/2009/10/31/1593486.html

原文地址:https://www.cnblogs.com/Leung/p/1593464.html