WCF之.NET Remoting通讯】的更多相关文章

一.NET Remoting 介绍 简介 .NET Remoting与MSMQ不同,它不支持离线可得,另外只适合.NET平台的程序进行通信.它提供了一种允许对象通过应用程序域与另一个对象进行交互的框架..NET 应用程序都在一个主应用程序域中执行的,在一个应用程序域中的代码不能访问另一个应用程序域的数据,然而在某些情况下,我们需要跨应用程序域,与另外的应用程序域进行通信,这时候就可以采用.NET Remoting技术来实现与另一个程序域中的对象进行交互.System.Runtime.Remoti…
Remoting通讯可以实现不同应用程序域之间的通信(可以为一台机器不同程序,也可以不同机器上的不同程序) 实例步骤: (1)编写透明代理类 新建一个类库,命名空间:MyRemoting 在该类库中建立一个接口,IMyrem和代理类MyObj 代码: 接口代码IMrem.cs namespase MyRemoting { public deledate void MyHandler(string str); //定义无返回值的自定义委托,用于构建调用事件 public delegate stri…
Windows通信基础(Windows Communication Foundation,WCF)是基于Windows平台下开发和部署服务的软件开发包(Software Development Kit,SDK). WCF就是微软对于分布式处理的 编程技术的集大成者,它将DCOM.Remoting.Web Service.WSE.MSMQ集成在一起,从而降低了分布式系统开发者的学习曲线,并统一了开发标准. WCF是建立在.Net Framework 2.0基础之上的,包含在.NET 3.0/3.5…
此文章主要参考http://www.cnblogs.com/weiweibtm/archive/2013/06/21/3148583.html 参考书籍<WCF全面解析上册>.<WCF全面解析下册> 非常感谢蒋金楠(Artech)老师 http://www.cnblogs.com/artech Windows通信基础(Windows Communication Foundation,WCF)是基于Windows平台下开发和部署服务的软件开发包(Software Developmen…
一.单向通讯单向操作不等同于异步操作,单向操作只是在发出调用的瞬间阻塞客户端,但如果发出多个单向调用,WCF会将请求调用放入到服务器端的队列中,并在某个时间进行执行.队列的存储个数有限,一旦发出的调用个数超出了队列容量,则会发生阻塞现象,此时调用请求无法放入队列,直到有其他请求被处理.WCF中所有的绑定都支持单向通讯.二.双向通讯WCF请求-应答模式是WCF中默认的操作模式.应答的默认超时时间为1分钟,如果超过一分钟没有应答,客户端就会获得一个TimeOutException异常.WCF中除了N…
传统上,我们把计算机后台程序(Daemon)提供的功能,称为"服务"(service).比如,让一个杀毒软件在后台运行,它会自动监控系统,那么这种自动监控就是一个"服务". 通俗地说,"服务"就是计算机可以提供的某一种功能. 根据来源的不同,"服务"又可以分成两种:一种是"本地服务"(使用同一台机器提供的服务,不需要网络),另一种是"网络服务"(使用另一台计算机提供的服务,必须通过 网络…
OSI七层和TCP/IP四层的关系 1.1 OSI引入了服务.接口.协议.分层的概念,TCP/IP借鉴了OSI的这些概念建立TCP/IP模型. 1.2 OSI先有模型,后有协议,先有标准,后进行实践:而TCP/IP则相反,先有协议和应用再提出了模型,且是参照的OSI模型. 1.3 OSI是一种理论下的模型,而TCP/IP已被广泛使用,成为网络互联事实上的标准. TCP:transmission control protocol 传输控制协议 UDP:user data protocol 用户数据…
WCF 通讯标准绑定 一.预定义标准绑定 标准绑定 说明 BasicHttpBinding BasicHttpBinding 绑定用于最广泛的互交操作,针对第一代Web服务,所使用的传输协议是HTTP或者HTTPS,其安全性由传输协议保证. WSHttpBinding WSHttpBinding绑定用于下一代Web服务,它们用SOAP拓展确保安全性,可靠性和事物处理;所使用的传输协议是HTTP或者HTTPS;为了确保安全,实现了WS-Security规范;使用WS-Coordination.WS…
记得在下第一次接触.NET Remoting分布式开发是在2003年,那时候是Framework1.0初次亮相之时,Remoting分布式开发是Framework1.0其中一个亮点.经过多年的发展,在2005年,WCF随着Framework2.0首先亮相.WCF是结合Remoting,Web服务,TCP/IP套接字,MSMQ信息,P2P,WSE等多方通讯的混合体.随着WCF的出现是否意昧着Remoting即将没落,答案是否定的.因为Remoting有其独到之处,在通讯效率,信息交换,安全性等多方…
一. 引言 Windows通讯基础(简称为WCF)是一种SDK,用于让你使用典型的CLR编程结构(例如用于发布和消费服务的类和接口等)来构建Windows面向服务的应用程序.WCF的编程模型是声明性的并且大部分是属性驱动的. WCF为通讯服务提供了一种运行时刻环境,使你能够把CLR类型暴露为服务并且以CLR类型来消费服务. 尽管在理论上你可以不用WCF来构建服务:但是,在实践中,WCF能够显著地简化这一任务.WCF是微软的一组工业标准的实现,该标准定义了服务交互.类型转化.编排和多种协议的管理.…
回<[开源]EFW框架系列文章索引> EFW框架源代码下载V1.3:http://pan.baidu.com/s/1c0dADO0 EFW框架实例源代码下载:http://pan.baidu.com/s/1eQCc69G 前言:上一章<WCFHosting服务主机的利用WCF服务通讯和实现思路 >中我们详细讲解了WCF服务主机的通讯功能,实现了客户端与服务端的通讯.光实现通讯功能还不够,中间件一定还要适合复杂的网络环境,这样增加了路由功能,还有系统性能问题那么中间件必须分布式部署,…
一个以前运行的很正常的项目,某天突然无法连接WCF构建的后台.使用WCFTestClient连接到服务是正常的,但是调用服务中的方式时就报出了以下错误: 已尝试创建到达不支持 .Net 框架的服务的通道.可能遇到 HTTP 终结点 ..... 开始以为是程序问题,排查了很久也没有发现问题,同事用同样的程序跑起来都很正常. 后来发现是端口被占用了的问题,由于我们的项目中WCF使用TCP模式通讯,然而测试时WCFTestClient是通过Http连接的(开启了http模式的发现).虽然Http的端口…
.Net Remoting的激活方式也有三种:SingleTon模式.SingleCall模式.客户端激活方式,WCF服务实例激活类型包括三种方式:单调服务(Call Service),会话服务(Sessionful Service),单例服务(Singleton Service).他们之间有什么联系.WCF服务激活类型的优势和缺点,以及如何在项目里编程开发和设置服务实例.全文分为5个部分,首先一次介绍单调服务(Call Service),会话服务(Sessionful Service),单例服…
构建一个WCF程序通常分为三个部分:服务类(Server).宿主(Host).客户程序(Client).有一个很重要的程序集(System.ServeiceModel)要引用,它包含WCF的核心功能. 主要内容 1.地址(addresses) 2.契约(contracts) 3.绑定(bindings) 4.端点(endpoints) 5.寄存 一.地址(addresses) 地址由模式.域.端口和路径组成.模式指所用的传输协议如TCP.命名管线.HTTP.MSMQ等,WCF中针对这些协议的模式…
最近一直在看关于thrift的相关文章,涉及到的内容的基本都是表层的.一旦具体要用到实际的项目中的时候就会遇到各种问题了! 比如说:thrift 的服务器端载体的选择.中间代码的生成options(async asyncctp wcf 等等).实现服务器端和客户端的基础框架的选择.和承载各层之间的组合的ioc架构. 其实这些东西,内容还是蛮多的.可能大家在看了这篇文章对很多必须要对 thrift 的基础做些普及才能看懂,还有就是windowsservices.wcf.spring.net! 这里…
有时候,我们需要在线上预览word文档,当然我们可以用NPOI抽出Word中的文字和表格,然后显示到网页上面,但是这样会丢失掉Word中原有的格式和图片.一个比较好的办法就是将word转换成pdf,然后让客户预览,下面来看一下基于Office和WPS的两种解决方案.  一.基于Office的解决方案 正如标题所说,基于Office就是要求服务器上面要安装的有Office.我们通过C#代码来调用COM接口,实现将Word转换成PDF.下面来看一下具体实现,首先引用Microsoft.Office.…
循环访问目录树 参考: http://msdn.microsoft.com/zh-cn/library/bb513869.aspx 循环访问目录树”的意思是在指定的根文件夹下,访问每个嵌套子目录中任意深度的所有文件.不必打开每一个文件,只检索string 形式的文件名或子目录名,或者可以检索 System.IO.FileInfo 或 System.IO.DirectoryInfo 对象形式的其他信息. 如果确信拥有指定根目录下所有目录的访问权限,则您可以使用 System.IO.SearchOp…
自己很少写技术博客,虽然已经干程序员两年多了,winform开发,web开发都干过,不论项目大小对于.net的相关技术也是了解的,如mvc,wcf,wpf,silverlight,socekt通讯,nhibernate,spring.net wp手机开发等,但是最终发现还是软件架构比所谓的单一功能更为系统化. 下面是一个小的例子 Winfom打印预览 首先是基类DocumentBase继承系统的PrintDocument using System; using System.Collection…
1.代码规范 -命名规范:定义的变量或者方法名要有意义. 1.骆驼命名 :第一个单词首字母小写,之后的单词首字母大写 userName.userPassword.realName…(普通变量(局部变量).字段) 2.帕斯卡命名:第一个单词首字母大写,之后的单词首字母大写 GetMax().ChangeName()…(方法名.类名.属性名) 注释:(代码说明书) 1.单行注释(//注释内容) 2.多行注释(/*注释内容*/) 3.文档注释(///注释内容) 2..net程序基本编写.执行流程 1.…
[.NetRemoting]2015.09.16 [分布式应用程序] 应用程序分布在不同计算机上,通过网络来共同完成一项任务 C/S架构[模式] [互操作性,Interoperability]又称[互用性] 是指不同的计算机系统.网络.操作系统和应用程序一起工作并共享信息的能力. [.Net网络编程技术] WCF,Web Service,Remoting,Socket [应用程序域,AppDomian,Application Domain] 1.[缘由] [1].Net程序集需要运行在托管环境中…
ThoughtWorks 面试备忘录   ThoughtWorks 面试备忘录 前言 前段时间 ThoughtWorks 在网上和拉勾网合作搞了一次网络招聘,名为抛弃简历!让代码说话!可谓赚足了眼球,很多程序猿纷纷摩拳擦掌.踊跃提交代码,在网上也是讨论的热火朝天. 我恰巧也在微博上看到了这条招聘信息,按我以前的性格对这类信息是不会感兴趣的.一则自己自信向来不足,二则惯性思维大公司出题一般都很难,比如智力题之类的.只是自己最近恰巧想换工作,于是便点进去看了看. 整个题目看下来觉得还好,不怎么难,主…
本文转自:https://blog.csdn.net/TestingGDR/article/details/81950593 写在最前面:目前自动化测试并不属于新鲜的事物,或者说自动化测试的各种方法论已经层出不穷,但是,能够在项目中持之以恒的实践自动化测试的团队,却依旧不是非常多.有的团队知道怎么做,做的还不够好:有的团队还正在探索和摸索怎么做,甚至还有一些多方面的技术上和非技术上的旧系统需要重构…… 本文将会从使用和实践两个视角,尝试对基于Web UI自动化测试做细致的分析和解读,给各位去思考…
1.对象的序列化 NET支持对象序列化有以下几种方式:二进制序列化:对象序列化之后是二进制形式的,通过BinaryFormatter类来实现的,这个类位于System.Runtime.Serialization.Formatters.Binary命名空间下.SOAP序列化:对象序列化之后的结果符合SOAP协议,也就是可以通过SOAP 协议传输,通过System.Runtime.Serialization.Formatters.Soap命名空间下的SoapFormatter类来实现的.XML序列化…
ThoughtWorks 面试备忘录 前言 前段时间 ThoughtWorks 在网上和拉勾网合作搞了一次网络招聘,名为抛弃简历!让代码说话!,可谓赚足了眼球,很多程序猿纷纷摩拳擦掌.踊跃提交代码,在网上也是讨论的热火朝天. 我恰巧也在微博上看到了这条招聘信息,按我以前的性格对这类信息是不会感兴趣的.一则自己自信向来不足,二则惯性思维大公司出题一般都很难,比如智力题之类的.只是自己最近恰巧想换工作,于是便点进去看了看. 整个题目看下来觉得还好,不怎么难,主要考察基本功和编程习惯,比如面向对象编程…
写在最前面:目前自动化测试并不属于新鲜的事物,或者说自动化测试的各种方法论已经层出不穷,但是,能够在项目中持之以恒的实践自动化测试的团队,却依旧不是非常多.有的团队知道怎么做,做的还不够好:有的团队还正在探索和摸索怎么做,甚至还有一些多方面的技术上和非技术上的旧系统需要重构……本文将会从使用和实践两个视角,尝试对基于Web UI自动化测试做细致的分析和解读,给各位去思考和实践做一点引路,以便各团队能找到更好的方式.<论语>有云:工欲善其事,必先利其器.在开始具体的自动化测试之前,我们需要做好更…
系统和系统之间,少不了数据的互联互通.随着微服务的流行,一个系统内的不同应用进行互联互通也是常态. PowerDotNet的服务治理平台发源于早期的个人项目Power.Apix.这个项目借鉴了工作过的公司的服务治理方案,站在巨人的肩膀上,一步一步从无到有模仿设计和实现. 一开始,Power.Apix被设计用于基于XML的Web服务通信,因为Web服务在当时是主流通信方式,朴素版本大概长下面这个样子: 服务端: 服务端只要加上ApixClazz.ApixMethod两个特性,一个Apix服务就完美…
本篇先通过Web Service和Remoting Service创建服务,抛砖引玉,再体验WCF服务.首先一些基本面: 什么是WCF? Windows Communication Foundation,微软的平台,用来搭建分布式的.互操作的应用程序. 什么是分布式应用程序? 如果把计算机看成是节点,分布式应用程序跑在2个或2个以上的节点上.比如,一个应用程序运行在一台电脑上,另一个服务运行在另外一台电脑上,应用程序消费所提供的服务. 为什么需要分布式应用程序? 比如有一个应用程序的结构是数据层…
1:Socket VS Remoting 使用socket无疑是效率最高的.但是,在复杂的接口环境下,Socket的开发效率也是最低的.故在兼顾开发效率的情况下,可以使用Remoting来代替Socket开发.并且:    1.Tcp通道的Remoting速度非常快.    你可以通过端口查看工具,发现remoting比直接socket传输的内容,应该是属于同一个数量级的.我的另一个担心是,大客户端数量的情况下,remoting传输效率会不会很低,结果经过现场测试,同时对300个客户端进行数据通…
何为心跳监控系统? 故名思义,就是监控某个或某些个程序的运行状态,就好比医院里面的心跳监视仪一样,能够随时显示病人的心跳情况. 心跳监控的目的是什么? 与医院里面的心跳监视仪目的类似,监控程序运行状态,一旦出现问题(比如:一些自动运行的服务.程序等突然停止运行了),那么心跳监控系统就能“感知到”并及时的显示在监控界面上,同时可以通过微信.短信告之相关的人员,以便他们及时处理程序异常,从而避免一些自动运行的服务.程序等突然停止运行而造成的一系列损失 心跳监控系统实现的思路是怎样的? 核心技术:WC…
概述 WCF陆陆续续也用过多次,但每次都是浅尝辄止,以将够解决问题为王道,这几天稍闲,特寻了些资料看,昨晚尝试使用WCF的双工模式实现了一个简单的即时通讯程序,通过服务端转发实现客户端之间的通讯.这只是个Demo,没有考虑异常处理和性能问题.解决方案结构如下: 契约 using System; using System.Collections.Generic; using System.Linq; using System.ServiceModel; using System.Text; usi…