WCF 跟并发 性能相关的几个配置:
1、系统控制的客户端网络连接并发(如果服务端也需要并发请求的话这个参数也是需要的):
         <configuration>                <system.net>                        <connectionManagement>                                   <add address="*" maxconnection="1000"/>                          </connectionManagement>                </system.net>         <configuration>         这个参数指定一个进程内(或domain) 并发通信连接个数限制,默认2个(就是系统控制了)
2、WCF 网络TCP/IP 监听(bingding)控制的传输协议      这个参数是针对某一(些)端点的绑定的控制
             <bindings>

<netTcpBinding>

<bindingname="netcpbindingconfig"

"      " />

这2个参数: 第一个就是我们常用的listen的参数,这个意义我们应该很清楚了。

第二个参数 msdn解释是: 客户端上可存入池中以备后续重复使用的最大连接数;服务器上可挂起调度的最大连接数。  On the client, the maximum number of connections to be  pooled for subsequent reuse; on the server, the maximum number of  connections allowed to be pending dispatch. (看来中文翻译的不太好)。

第一个是tcp协议的控制,第二个是紧跟着协议之后的调度配置(服务端)。

3、针对服务宿主(servicehost)进行的控制

<serviceBehaviors>

<behaviorname="MathServiceBehaviours" >

<serviceThrottling

 

"

 

"

 

"/>

 

</behavior>

</serviceBehaviors>

maxConcurrentCalls :该值指定整个 ServiceHost中正在处理的最多消息数。

specifies the maximum number of messages actively processing across a ServiceHost.

总结,在服务端控制流量的机制即listenBackLog -> maxConnections -> maxConcurrentCalls(..)

基本上分三个阶段。也是针对不同的可控制对象。

listenBackLog 针对tcp连接的缓冲设置

maxConnections 针对接到连接后,要分配给service消费是 排队(缓冲)的设置;

maxConcurrentCalls(sessions, instances) 是针对service处理压力的控制。

比较完美了!

研究WCF并发及处理能力的控制的更多相关文章

  1. 30行代码搞定WCF并发性能测试

    [以下只是个人观点,欢迎交流] 30行代码搞定WCF并发性能 轻量级测试. 1. 调用并发测试接口 static void Main()         {               List< ...

  2. Java并发编程:线程控制

    在上一篇文章中(Java并发编程:线程的基本状态)我们介绍了线程状态的 5 种基本状态以及线程的声明周期.这篇文章将深入讲解Java如何对线程进行状态控制,比如:如何将一个线程从一个状态转到另一个状态 ...

  3. 关于webapi调用wcf并发假死的分析

    原来IDFA(IOS推广获取到用户IOS手机的唯一标识,如果不刷机的话跟安卓的IMEI一样)在公司正常的页面是公用用一个网站和数据库的. 起初怀疑并发数太多,把数据库连接池的数量从一百设置到三百,确实 ...

  4. Linux驱动设计——并发与竞态控制

    并发的概念:多个执行单元同时.并行被执行. 共享资源:硬件资源(IO/外设等),软件上的全局变量.静态变量等. 四种并发控制机制(对共享资源互斥的访问):原子操作.自旋锁(spinlock).信号量( ...

  5. mvc wcf 并发提示,存储Application,验证是否有用户在操作

    System.Web.HttpContext httpContext = System.Web.HttpContext.Current; Hashtable departmentSalary = (H ...

  6. Python并发编程-事件,红绿灯控制

    事件用来控制多个进程同时执行或者阻塞 set和clear 分别用来修改一个事件的状态,True或者False is_set 用来查看一个事件的状态 wait 是依据事件的状态来决定自己是否在wait处 ...

  7. 基于ScheduledExecutorService的并发定时任务处理能力测试

    测试代码 定时器类 package business.util; import java.util.concurrent.Executors; import java.util.concurrent. ...

  8. Remoting,OData Snippet Compiler等

    http://www.sliver.com/dotnet/SnippetCompiler/ [ASP.NET Web API教程]ASP.NET Web API系列教程目录 张逸 .Net Remot ...

  9. SOA与C#

    What is SOA? SOA or Service oriented architecture is an architecture style for building business app ...

随机推荐

  1. CF -- 414A

    #include<iostream> #include<cstdio> #include<cstring> using namespace std; int mai ...

  2. C# Login方法

    public static bool User_Login(string url, string uname, string password, out string[] userInfo) { st ...

  3. php--常用的时间处理函数

    天地四方曰宇,往古来今曰宙 时间是世界的重要组成部分,不论花开花落,还是云卷云舒都有它的影子. 但它源起何处?又将去向何方?没人知道答案,也不需要答案,我们需要的只是一个相对的起点来标识时间,现今世界 ...

  4. [App]Android Studio First App

    准备着看Android Studio的体验如何. 通过Android Studio构建一个默认的项目,添加一些元素 <RelativeLayout xmlns:android="htt ...

  5. [LeetCode] Subsets I (78) & II (90) 解题思路,即全组合算法

    78. Subsets Given a set of distinct integers, nums, return all possible subsets. Note: Elements in a ...

  6. 普通身份运行Tomcat

    普通身份运行Tomcat 转载1   权限分配问题 su - username -c “command”这样的形式可以使用任意一个有执行权限的用户执行 -c后边的命令. 注意,- username中间 ...

  7. debug.keystore文件不存在解决办法

    重装系统之后,丢失了debug.keystore,找了很久都没有找到,根据网上所讲的只要重新运行一个android项目;就会在avd中生成一个新的debug.keystroe,此法也没解决,索性直接重 ...

  8. 如何在ubuntu下使用stage3d的硬件加速

    最近想尝试一下心动的新游戏深渊,但是由于公司的电脑是ubuntu的,只要进游戏就提示说没有stage3d的硬件加速,于是google了一下,发现这么一篇文章 http://phoronix.com/f ...

  9. Spring 4.x org.springframework.http.converter.json.MappingJacksonHttpMessageConverter ClassNotFoundException:

    Spring 4.x The first major version of Jackson is no longer supported in Spring 4. The class you want ...

  10. win7下jdk安装环境变量配置

    新本本,新系统,还是得把武器给装配好. 以下图文记录win7系统下的jdk的安装和配置. 1.下载jdk 地址:http://java.sun.com/javase/downloads/index.j ...