现在我能找到的关于WCF性能方面的文章主要有几个,一个是微软Connected Frameworks Team的Saurabh Gupta (PM)2007年初发布了一个WCF的性能测试报告 作者使用...ES--对于ES .NET Enterprise Service的情况,稍稍有些不稳定,因为一个场景中WCF快了100%,其他的场景中WCF落后ES的性能,而且至少是25%。...具体参见:比较 .NET 3.0 和 IBM WebSphere 6.1 Application Server 的性能 在CodePlex上有两个关于WCF和Remoting性能测试的项目: 1、WCF.../TwoWay的测试,是根据微软的WCF性能测试白皮书来做的,具体参见作者的文章WCF Latency Test Harness and WCF Performance 2、WCF vs Remoting...主要是比较WCF和Remoting之间的性能。
WCF系统内置绑定列表 绑定 配置元素 说明 传输协议 编码格式 BasicHttpBinding 一个绑定,适用于与符合 WS-Basic Profile的Web...并支持联合安全性 HTTP/HTTPS Text,MTOM NetTcpBinding 一个安全且经过优化的绑定,适用于WCF应用程序之间跨计算机的通信 TCP Binary...NetNamedPipeBinding 一个安全,可靠且经过优化的绑定,适用于WCF应用程序之间跨计算机的通信 IPC Binary MsmqIntegrationBinding... 一个绑定,适用于WCF应用程序和现有消息队列(也称为MSMQ)应用程序之间跨计算机的通信 MSMQ Binary NetMsmqBinding WCF各系统绑定所支持的功能 绑定名称 传输性安全 消息级安全 WS*兼容性 WS*事务支持 持久可靠消息传送 可靠会话 性能 请求/响应 单向 双工 basicHttpBing √ √ √
无论从功能上讲,还是从WCF的整个基础构架的层次结构上讲,WCF可以分成两个不部分:编程模型和通信实现。...服务模型层建立在信道层之上,对于一般的WCF开发人员来讲,他们仅仅会接触到服务模型层,信道层则是被屏蔽掉的。而绑定是整个信道层的缔造者。...[第2篇] 信道与信道栈(Channel and Channel Stack) WCF采用基于消息交换的通信方式,而绑定则实现了所有的通信细节。...绑定通过创建信道栈实现了消息的编码与传输,以及对WS-*协议的实现。WCF绑定模型涉及多种类型的组件,比如信道、信道监听器、信道工厂等等。...其实我们完全可以把一个WCF应用开成是一个普通的基于监听-请求模式的网络应用,服务端将监听器绑定到一个或一组URI上进行网络监听,一旦成功监听到来自客户端的请求,则接收、处理该请求,如需回复则发送回复回客户端
所以绑定元素几何的构成以及它们之间的先后顺序,决定了最终生成的信道栈中的信道组成已经它们位于栈中的先后顺序。WCF之所以在设计的时候将绑定和绑定元素分离开发,是基于灵活性、可扩展性考虑的。...在WCF中,所有的绑定都直接或者间接继承自抽象基类:System.ServiceModel.Channels.Binding,我们现在来简单地分析一下这个基类。...WCF中的绑定模型: [WCF中的Binding模型]之一: Binding模型简介 [WCF中的Binding模型]之二: 信道与信道栈(Channel and Channel Stack) [WCF...中的Binding模型]之三:信道监听器(Channel Listener) [WCF中的Binding模型]之四:信道工厂(Channel Factory) [WCF中的Binding模型]之五:绑定元素...(Binding Element) [WCF中的Binding模型]之六:从绑定元素认识系统预定义绑定
接下来我们要介绍的另外三种绑定,相比之下就不具有如此好的互操作性,它们只能应用于单纯的WCF客户端和服务之间的交互。...所以在所有的绑定中,NetNamedPipeBinding将是性能最好的绑定类型。 我们照例通过分析绑定元素的方式来理解绑定本身的特性与能力。...WCF中的绑定模型: [WCF中的Binding模型]之一: Binding模型简介 [WCF中的Binding模型]之二: 信道与信道栈(Channel and Channel Stack) [WCF...中的Binding模型]之三:信道监听器(Channel Listener) [WCF中的Binding模型]之四:信道工厂(Channel Factory) [WCF中的Binding模型]之五:绑定元素...(Binding Element) [WCF中的Binding模型]之六:从绑定元素认识系统预定义绑定
使用jquery对节点绑定事件时,例如绑定click事件,常用的方式有: (1)$('x').click(function (){}); (2)$('x').delegate('childnode',...'click', function (){}); delegate委托方式是jquery后推出的,而且我们经常可以看到有文章推荐使用delegate,delegate方式相比直接绑定有什么优势呢?...测试 生成一万个 li 节点,对其进行 click 事件绑定,分别使用上面的两种方式,测出各自的执行事件 代码 这里使用php动态生成一万个li <?...st; alert(st2); }); 结果 每种方式执行3次,取平均值 方式一:104毫秒 方式二:2毫秒 可以看到,delegate的性能高效了很多
最近遭遇了绑定手机号相关的压测需求,有了手机号登录的经验和测试数据,这次算起来比较简单。...最重要的是难点就是要求开发配合调整配置已经在上一期文章:手机号验证码登录性能测试中问题解决了,绑定手机号唯一的难点就是如何在单账号绑定的过程中不断切换手机号,而且保证最后账号的绑定手机号还是一开始的14...业务逻辑: 请求发送验证码接口,发送成功(未绑定的手机号,用户登录状态)可以获取到登录的一个参数traceNo 使用用户登录校验令牌、traceNo、短信验证码、手机号请求绑定手机号接口 基本的校验规则如下...149和148之间切换,149为初始状态,这里并没有使用每次换一个新手机号,第一是怕出现偶然重复,第二是数据维护不容易 测试方案: 将发送验证码和绑定手机号两个接口放在一起压测,需要准备一批测试用户 单个线程绑定一个用户.../** * 每个用户先发短信然后绑定手机号,手机号分为148和149切换,后8位于uid后8位.最后会把测试数据固定在149号段 */ class BindPhone extends OkayBase
在使用 WCF 时,为了更好地进行调试,我都选择了 HTTP 协议进行数据传输。最近项目对性能要求比较高,所以就换成了使用 TCP 协议。并对二者的性能进行了一个简单的测试。...结论:使用 TCP 连接,可以节省在建立连接时的性能消耗。对于进行大量连接时,相对 HTTP 有比较明显的性能提升。...之前由于需要也进行过各种性能测试。经常懒得进行最直接的测试,而是直接使用应用程序中的环境进行测试。...以后要做性能测试,就一定要严谨,要在测试前想好纯净的测试用例,编写正式、直接的测试代码,这样其实是最省时的方法。
摘要 在项目开发中,我们可能会适时的选择http或者tcp绑定的wcf服务,可以使用控制台来托管服务,也可以使用IIS来承载服务,由于IIS本身对于请求和异常的处理能力,使得我们可以省去很多开发精力而成为托管服务的首选...,之前我做的WCF服务时托管在控制台的,今天摸索了一下采用tcp绑定的wcf托管到IIS7的过程,分享一下,希望能帮助到想移植服务到IIS的朋友。...实例 依然是以一个服务作为例子展开,我们新建一个WCF Application,默认有一个简单的服务Service1.svc, 代码 [ServiceContract] public interface...开始移植 接下来我们需要将这个普通的服务移植Host到IIS上, 第一.首先需要更改web.config文件,将服务配置为net.tcp绑定 配置文件如下: 代码 <system.serviceModel...在创建虚拟目录时也许VS会提示需要安装IIS6的一些组件,那么我们按照提示打开”windows的更新安装“ 要将WCF的tcp绑定方式的服务host在IIS上,首先你需要启用这个功能 ?
WCF(Windows Communication Foundation)是由微软开发的一系列支持数据通信的应用程序框架,可以翻译为Windows通信开发平台 WCF整合了原有的Windows通信的...WCF是对这些技术的统一。...:策略设置安全或其它条件,绑定指定传输方式与编码。...WCF的基础概念 1.地址 2.绑定(Binding) 3.契约(Contract) 4.终结点 用来发送或接收消息(或执行这两种操作)的构造,终结点包含一个定义消息可以发送在的目的地位置节点...,包含一个定义消息可以发送到的目的地位置(地址),一个描述消息应如何发送的通信机制规范(绑定)以及对于可以在该位置发送或接收(或两者皆可)的一组消息的定义(服务协定)---该定义还描述了可以发送何种消息
常用性能监测工具 Linux系统下,CPU与内存子系统性能调优的常用性能监测工具有top、perf、numactl这3个工具。1) top工具 top工具是最常用的Linux性能监测工具之一。...通过top工具可以监视进程和系统整体性能。...常用的修改方式有如下:(1)将设备中断绑定到特定CPU核上。.../mongod (3)可以使用 taskset 命令把一个程序绑定在一个核上运行。 taskset -c 0 ....预告 下一节,我们将聊聊如何通过提L1与L2缓存命中率来提高应用程序性能。
前面一篇文章《WCF 学习总结1 -- 简单实例》一股脑儿展示了几种WCF部署方式,其中配置文件(App.config/Web.config)都是IDE自动生成,省去了我们不少功夫。...现在回过头来看看IDE提供的Wcf Service Library项目模板中的默认服务端配置文件——App.config里面究竟有什么秘密。...关于WCF中的地址和绑定,需要补充一下。...中提供的绑定有: BasicHttpBinding: 最简单的绑定类型,通常用于 Web Services。...------ 弱弱的分隔线 ----- OK,有了上面的基础,就让WCF风暴来的猛烈些吧。做一个多服务,多端点的示例。 ?
一、简介 任何一个程序的运行都需要依赖一个确定的进程中,WCF也不例外。...如果我们需要使用WCF服务,那么我们就必须将服务寄宿与创建它并控制它的上下文和生存期的运行时环境当中,承载服务的环境,称之为宿主。WCF服务可以在支持托管代码的任意Windows进程中运行。...通过使服务从 ServiceBase 类以及从 WCF 服务协定接口继承,将该服务同时实现为 Windows 服务和 WCF 服务。...5、Internet信息服务(IIS) 在IIS中承载WCF服务,之前已经创建了契约层和服务层,这里就不创建了。 第一步:新建IISHost空Web应用程序,作为WCF服务的宿主 ?...ok,IIS作为宿主部署WCF服务成功!
绑定和 EndpointAddress 对象一起使用时,此服务协定将公开以供客户端使用。...中,WSDL是元数据交换的一种数据格式,通过它的描述,WCF服务程序间就可以进行相应的数据交换,甚至是跨平台的应用间也可以进行数据交换。...(4)、ProtectionLevel:使用 ProtectionLevel 属性指定协定绑定对公开协定的终结点要求的加密和/或数字签名的程度。...使用 SessionMode 属性来要求在终结点之间支持会话的绑定。 会话就是将在两个或多个终结点之间交换的消息集相互关联的方式。...如果绑定不支持会话,则会引发异常。具体请参考:WCF系列教程之WCF中的会话. (6)、CallbackContract:获取或设置当协定为双工协定时的回调协定类型。
本随笔参考自WCF编程系列(一)初识WCF,纯属读书笔记,加深记忆。...2、WCF的基本组成 (1)、地址:定义服务的地址,也就是服务接口所在地的IP地址 (2)、绑定:定义服务的通讯方式(传输协议、编码方案) (3)、契约:定义服务的具体实现 (4)、终结点(endpoint...):由地址、绑定、契约共同构成一个终结点,服务器通过终结点向客户端公开服务,客户端通过终结点来调用服务。...宿主程序:WCF通过改程序向外部发布服务,也就是说改程序必须保持启动的状态,否则WCF中的服务,外界将无法获取。...使用WCF大部分时间,都在配配置文件。 (4)、第四步,编写WCF宿主的配置文件app.config,来配置我们的WCF程序 <?
一、WCF配置文件结构如下图所示,包含三个部分,services(服务)、bindings(绑定)、behaviors(行为) ?...4、endpoint节点:该节点指定用于公开服务的终结点的绑定、协定和地址属性,与WCF的所有通信是通过该服务的终结点进行的,利用终结点,WCF服务可以访问WCF提供的功能。...WCF服务元数据是WCF服务的核心部分的服务地址(adress)、绑定(通信协议bindings)、契约(服务、操作、数据Contract)的原始描述信息。...暴露WCF元数据的原因: 描述了WCF服务元数据的作用后,就能推测出为什么暴露WCF服务元数据的原因.WCF服务元数据描述服务的核心信息,客户端需要了解这些特征以便与该服务进行通信。...5、bindings节点 配置绑定所需要的节点属性,绑定用于连接WCF服务终结点所需要的详细信息,所以每个终结点必须正确配置绑定信息,绑定最起码需要指定使用的传输机制(HTTP/TCP),还可以设置其他特征
本文参考自http://www.cnblogs.com/wangweimutou/p/4517951.html,纯属读书笔记,加深记忆 一、理解WCF实例化机制 1、WCF实例化,是指对用户定义的服务对象以及与其相关的实例上下文对象的生存期的控制...会话模式,这是InstanceContextMode的默认值,为每个新的客户端会话创建一个新的 InstanceContext(以及相应的服务对象),并在该会话的生存期内对其进行维护(这需要使用支持会话的绑定...二、实例化模式PerCall、PerSession、Single详解 1、单调模式 单调模式中,WCF总是创建一个新的服务实例上下文来处理请求对象,即客户端每调用一次方法就会创建一个实例上下文对象,调用完成靠...1、WCF服务层搭建:新建契约层、服务层、和WCF宿主,添加必须的引用(这里不会的参考本人前面的随笔),配置宿主,生成解决方案,打开Host.exe,开启服务。...(2)、单例模式(Single) 在单例模式中,WCF只会创建一个实例上下文来处理服务的所有的请求调用对象,即PerCall只会被实例化一次,不管调用的请求对象是在同一个客户端还是在不同的客户端.
本文参考自http://www.cnblogs.com/wangweimutou/p/4516224.html,纯属读书笔记,加深记忆 一、WCF会话简介 1、在WCF应用程序中,回话将一组消息相互关联...2、WCF中的回话机制通过设置服务协定ServiceContract上的SessionMode的枚举值来设置服务协定是否要求、允许或者拒绝基于回话的绑定.枚举值有以下三种: (1)、Allowed:允许回话...二、WCF中的回话和Asp.Net中的回话 1、WCF中回话的主要功能有以下: (1)、他们由调用程序显示启动或者关闭 (2)、会话期间传递的消息按照接收消息的顺序进行处理。...(4)、不存在与 WCF 会话相关联的常规数据存储区。...1、WCF服务层搭建:新建契约层、服务层、和WCF宿主,添加必须的引用(这里不会的参考本人前面的随笔),配置宿主,生成解决方案,打开Host.exe,开启服务。
服务程序进行配置: 所有与WCF服务有关的文件类,全都引入System.ServiceModel命名空间。...服务契约和服务类和宿主全部搭建成功,下面开始配置WCF服务 4.通过WCF服务配置编辑器(Microsoft Service Configuration Editor)来配置服务程序,选择visual...studio 菜单中的工具选项下的WCF服务配置编辑器,点击即可打开。...(10)、添加绑定配置 添加绑定配置,选择左侧的绑定菜单项,新建绑定配置 ? ? 点击确定 ?...(13)、为当前服务类型绑定服务行为 为服务选择BehaviorConfiguration的选项为serviceBehavior。
1.首先先建立一个WCF服务应用程序 2.再建立一个宿主程序,这里用控制台,添加服务引用,这里会报错: 点击页面确定,回到添加服务页面 点击箭头有如下内容: 这里告诉我们问题的所在,我们只要重新生成解决方案就行了