WCF(二)三种通信模式

WCF在通信过程中有三种模式:请求与答复、单向、双工通信请求与答复模式客户端发送请求,然后一直等待服务端的响应答复(异步调用除外),期间处于假死状态,直到服务端有了答复后才能继续执行其他程序请求与答复模式为WCF默认模式,无需任何设置 [OperationContract] string GetData(int value);单向模式客户端向服务端发送求,不管服务端是
阅读本文

wcf 开发 1

1、创建wcf应用程序2、生成服务,启动3、使用工具生成 文件如下:4、新增加winform程序项目,并添加文件 service1.cs修改app.config  5、代码调用private void button1_Click(object sender, EventArgs e) { Service1Client client = new Service1Client(); string s=
阅读本文

初探SOA 与 WCF

SOA (service-oriented architecture) 面向服务的体系结构(架构)是构造分布式计算的应用程序的方法。它将将应用程序功能的实现封装为服务,发送给客户端或者其他服务。服务导向的架构提升了将用户从服务实现分开的目标。服务可以运行在不同的服务器上,并通过网络被访问。 这也大大增加了服务的重用。 SOA的原则·可重复使用,粒度,模组性,可组合性,物件化原件,构件化以及具交互操
阅读本文

【WCF】如何将WCF部署到远程服务器

一、前言      最近需要将自己写的WCF服务部署到远程服务器上,也就是公网上。宿主是IIS,在配置成功之前遇到了很多问题,问题如下:      1. WCF该怎么宿主在IIS上,为何会出现 400 Bad Request      2. 防火墙如何开放      3. 为何我能在客户端引用服务,但是运行时依然提示Soap操作错误,404 Not Found            那么接下来,我
阅读本文

WCF扩展之实现ZeroMQ绑定和protocolBuffer消息编码(一)概要设计

在我工作的项目中含有多种操作系统、多种设备、多种开发语言,因此需要使用跨平台的通信技术和自定义的消息编码。经过技术调研,ZeroMQ+ProtocolBuffer最终成为通信技术和编码方式。但是如何使用这些技术成了问题,如果直接调用,势必会让业务逻辑和通信技术绑定在一起,很难分离。所以需要引入一种框架,可以将业务和通信解耦。WCF是目前最成熟的通信框架之一,WCF的优点还是很多的。 WCF连接各
阅读本文

C# WCF简单入门图文教程(VS2010版)

C# WCF简单入门图文教程(VS2010版)这篇文章主要介绍了WCF简单入门图文教程,版本是VS2010版,帮助大家轻松学习了解DataContract、ServiceContract等特性,感兴趣的小伙伴们可以参考一下在这个例子中我们将使用VS2010创建一个WCF服务,其中会了解[DataContract][ServiceContract]等特性。内置的WCFSVCHost,并使用“WCF测
阅读本文

[WCF编程]9.性能与限流

一、性能概述         WCF服务的性能取决于很多因素。出了CPU、RAM和网络性能等常见的因素外,实例上下文模式、并发模式、数据契约的设计或使用的绑定等与WCF有关的因素都起着重要的作用。         实例上下文模式用来控制服务对象的实例化行为有PerCall、PerSession和Singleton三种模式可供选择。         绑定决定了传输协议和编码格式。此外,通过绑定可以使
阅读本文

Entity Framework在WCF中序列化的问题

问题描述 如果你在WCF中用Entity Framework来获取数据并返回实体对象,那么对下面的错误一定不陌生。接收对 http://localhost:5115/ReService.svc 的 HTTP 响应时发生错误。这可能是由于服务终结点绑定未使用 HTTP 协议造成的。这还可能是由于服务器中止了 HTTP 请求上下文(可能由于服务关闭)所致。有关详细信息,请参见服务器日志。这就是因为在返
阅读本文

WCF配置详解

前面一篇文章《WCF 学习总结1 -- 简单实例》 一股脑儿展示了几种WCF部署方式,其中配置文件(App.config/Web.config)都是IDE自动生成,省去了我们不少功夫。现在回过头来看看IDE提供的Wcf Service Library项目模板中的默认服务端配置文件--App.config里面究竟有什么秘密。服务端的配置文件主要是对services、bindings、behavior
阅读本文

利用WCF的双工通讯实现一个简单的心跳监控系统

何为心跳监控系统?故名思义,就是监控某个或某些个程序的运行状态,就好比医院里面的心跳监视仪一样,能够随时显示病人的心跳情况。心跳监控的目的是什么?与医院里面的心跳监视仪目的类似,监控程序运行状态,一旦出现问题(比如:一些自动运行的服务、程序等突然停止运行了),那么心跳监控系统就能“感知到”并及时的显示在监控界面上,同时可以通过微信、短信告之相关的人员,以便他们及时处理程序异常,从而避免一些自动运行
阅读本文

十五天精通WCF——第三天 client如何知道server提供的功能清单

通常我们去大保健的时候,都会找姑娘问一下这里能提供什么服务,什么价格,这时候可能姑娘会跟你口述一些服务或者提供一份服务清单,这样的话大家就可以做到童嫂无欺,这样一份活生生的例子,在wcf中同样是一个道理,只有client了解service能提供哪些功能,client才可以根据server提供的功能进行消费,那问题来了,service怎么把功能提供给client进行选择呢???这个就是我这一
阅读本文

WCF后续之旅(3): WCF Service Mode Layer 的中枢—Dispatcher

希望读者对ServiceMode有一个大致的了解,结合前面介绍的channel layer的相关知识,帮助读者了解WCF的整个实现机制和执行的流程。 介绍ServiceMode涉及到的绝大部分extension point,让读者在具体的项目开发中能够根据实际的需要灵活、自由地对WCF进行扩展。 对MSDN的查阅 对相关WCF著作的查阅,比如《Programming WCF Service》、
阅读本文

WCF进阶:将编码后的字节流压缩传输

在前面两篇文章和中讲述了如何通过拦截消息的方式来记录或者修改消息,这种方式在特定条件下可以改变消息编码格式,但实现方式并不规范,而且使用范围也有限制。 WCF缺省提供了三种编码器(MessageEncoder):TextMessageEncoder,BinaryMessageEncoder,MtomMessageEncoder。事实上也是基于XML可以有三种格式:Text,Binary,MTO
阅读本文

使用WCF上传文件

在WCF没出现之前,我一直使用用WebService来上传文件,我不知道别人为什么要这么做,因为我们的文件服务器和网站后台和网站前台都不在同一个机器,操作人员觉得用FTP传文件太麻烦,我就做一个专门用来上传文件的WebService,把这个WebService部署在文件服务器上,然后在网站后台调用这个WebService,把网站后台页面上传上来的文件转化为字节流传给WebService,然后W
阅读本文

WCF(一)

概念:跟WebService一样,都是为了实现不同平台不用应用程序之间的数据通信,但是WebService有一个缺点就是Web通信好使,局域网通信不太好使,一般局域网使用.Net Remoting这样的技术,所以微软推出了WCF契约:契约部分就是完成服务与宿主代码的编写终结点:由地址(Address)绑定(Bind)和契约(Constract)共同构成一个终结点(俗称ABC)服务器通过终结点向客户
阅读本文

WCF客户端调用并行最大同时只支持两个请求

做项目的时候发现 频繁调用WCF服务时 明明一次性发起了几十个请求 而在服务端记录的日志却显示出现了排队的迹象并且都是最大并发数为2在网上狂搜 大家给出来的解决方法都是增加web.config里面bingding的最大连接数 我试过之后依旧没有啥用后来在一个csdn的帖子里面一个哥们说他也遇到了类似的状况 后面他采用了tcp方式的wcf问题就解决了 感觉改动太大无奈放弃最后在https://sta
阅读本文

《大型网站系统与Java中间件实现》有感

回想代码人生至今,都是写c/s架构的,跨机器调用不是大问题,不过从未涉及过多服务器的场合,中间件也只是听说过,一直没搞清楚到底中间件起到了什么作用。当系统规模大到需要多服务器,甚至多数据库时,怎样的设计才是合理的?中间件的引入,使得系统的复杂性对于客户端透明,(如果客户端还需要考虑怎么路由到目的服务器,那这个中间件就需要再设计了),这样客户端的代码就可以简化很多,更容易维护。但同时,对于中间件的设
阅读本文

jsonp解决跨域访问受限问题

json和jsonp是两个很容易混淆的概念,再介绍跨域访问之前简单介绍一下这两个概念吧。 1、json是一种应用广泛,而且很简单的数据描述格式,或者说是规则。 优点:1、基于纯文本,跨平台传递极其简单; 2、JavaScript原生支持,后台语言几乎全部支持; 3、轻量级数据格式,占用字符数量极少,特别适合互联网传递; 4、容易编写和解析,
阅读本文