Remoting技术基础认识(精选).docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Remoting技术基础认识(精选)

Remoting技术推出好多年了,一直没有系统的去了解它,之前粗略看了点资料后来也中断了。现在重新开始学习这一技术并记录下学习的过程。   也许有人说现在不是有了WCF吗。?Remoting不是集成到WCF中了吗?为什么还要学习它呢?首先:为不否认现在有了更好集成了 Remoting、MSMQ、WEB SERVICE这些优秀技术的WCF,但是我想既然是集成,那WCF一定集中了上述技术的优点,并且WCF应该是在Remoting、MSMQ、WEB SERVICE的基础上推出的。既然这样那么WCF也应该有一些Remoting的特点。确实,后来为看WCF的基础的时候,发现WCF里面的一些东西就 是Remoting里早就提及过的,也加快了学习WCF的进程。 其次:Remoting技术是MS思想的一部分,学习它我们学习它的架构,可以考虑为什么要这样,这样能有什么好处。从中也能使我们有一些思想方面的提升。 本节要点:   Remoting技术介绍   Remoting与SOCKET、WEB SERVICE各有什么优势   Remoting技术特点   Remoting技术基础概念   1、Remoting技术介绍。   Remoting是一种中应用程序域之间通讯的一种技术。   以前,程序之间的分割是以进程为单位的。.NET推出以后,对.NET这一块的技术来说以应用程序域为分割。那么什么是应用程序域?它的作用是 什么?接触过.NET的程序员都知道一个概念----托管代码。而我们的进程,它是不知道托管代码的。所以托管代码是无法直接在进程运行。为了使托管代码 运行中非托管的进程中,就需要应用序域。应用序域运行中非托管的进程中,并为托管代码提供运行环境。注意应用程序域AppDomain是一个非托管的对象。我们新建一个应用程序,应用程序的名字就是默认的应用程序域的名字。当然,我们可以中默认应用程序域新建应用程序域。我们可以测试一下AppDomain。代码如下: 代码 1 static void Main string[] args 2 3 AppDomain currentDomain AppDomain.CurrentDomain; 4 Console.WriteLine currentDomain.FriendlyName ; 5 6 AppDomain newDomain AppDomain.CreateDomain newDomain ; 7 Console.WriteLine newDomain.FriendlyName ; 8 Console.ReadLine ; 9 10 11 运行结果如下:   Remoting就是中如AppDomainTest与newDomain之间通讯的技术,不管这两个应用程序域是否在同一电脑中。 2、与socket、WEB SERVICE的比较   Remoting:客户端与服务端耦合比较紧密,因为他们之间共享相同的对象类型。它给CLR对象提供在不同应用程序域之间调用方法的功能。   SOCKET:需要指明所使用的协议,即TCP还是UDP。另外还需还需要定义定义数据传输协议,也就是数据包的组织方式 TLV等 。我们不仅要定义这些,还要自己创建并管理线程。 WEB SERVICE:它使用SOAP,数据通过XML的形式进行通讯。与平台无关性,无论你是用.NET开发,还是JAVA开发, 都可以通过它进行通讯。在客户端与服务端的耦合比较松散。   3、Remoting基础概念介绍   对客户端来说:信道、格式器、代理。   对服务端来说:信道、格式器、Stack Builder。   信道:信道用户客户机与服务器之间通讯的通道。由客户端传输到服务端以及从服务端传送到客户端都是通过它完成的。FRAMEWORK提供三种类型的信道:TCP、HTTP、IPC。   格式器:客户端与服务端的通讯的数据必须以一定的格式进行传送。客户端与服务端将要传送的消息经过格式器转化,通过通道进行传送。   代理:客户端调用的是代理对象上的方法,而不是远程对象上的方法。代理对象分为透明代理、真实代理。在客户眼中,透明代理对象看起来与远程对象 类似。在透明代理对象上,客户机可以调用有远程对象提供的方法,然后透明代理调用真实代理对象上的Invoke。Invoke()方法使用消息接收器把消 息传送给信道。   Stack Builder:读取有格式器进过反序列化而来的消息,然后依据消息创建对象,调用方法。返回时,Stack Builder将返回值封装成消息,传递给格式化器。   远程对象:即运行中服务器端的对象。客户端不能直接调用远程对象上的方法,而要使用代理。使用.NET很容易把远程对象和本地对象分开:即每一

文档评论(0)

kabudou + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档