.net wcf 并发

转载 2012年03月23日 09:05:03
骤:
1.把同样的WCF服务,在多个端口上"启动"(即同时运行多个wcf的实例,但每个实例都监听不同的端口)

2.用svcutil.exe生成的代理类,里面有N多构造函数的重载版本,观察一下类似下面的这个版本
public AstroServiceClient(string endpointConfigurationName) :
            base(endpointConfigurationName)
    {
    }

即传入配置名生与代码类的实例,我们在web.config中的wcf配置节,做如下处理:
<client>
            <endpoint address="http://localhost:8001/Astro/" binding="wsHttpBinding"
                bindingConfiguration="WSHttpBinding_IAstroService" contract="IAstroService"
                name="1">
                <identity>
                    <dns value="localhost" />
                </identity>
            </endpoint>
          <endpoint address="http://localhost:8002/Astro/" binding="wsHttpBinding"
                bindingConfiguration="WSHttpBinding_IAstroService" contract="IAstroService"
                name="2">
            <identity>
              <dns value="localhost" />
            </identity>
          </endpoint>
          <endpoint address="http://localhost:8003/Astro/" binding="wsHttpBinding"
                bindingConfiguration="WSHttpBinding_IAstroService" contract="IAstroService"
                name="3">
            <identity>
              <dns value="localhost" />
            </identity>
          </endpoint>
        </client>

即对应多个wcf服务端的实例,配置多个name的endpoint节点


3.修改客户端的调用代码

把原来类似这样的代码:
using (AstroServiceClient _client = new AstroServiceClient())

改成

using (AstroServiceClient _client = new AstroServiceClient(new Random().Next(1, 4).ToString()))

即客户端随机从多个wcf服务端的host中挑一个,生成代码类实例

大功告成,说白了就是把一个wcf的host分身成了3个,并且客户端随机调用3者之一

相关文章推荐

有关.Net的WCF Rest的知识

rest,即REST(Representational State Transfer表述性状态转移)是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。      REST...
  • guozh
  • guozh
  • 2012年04月28日 14:50
  • 1097

Spring.NET学习笔记22——整合WCF(应用篇)

Spring.NET对WCF(Windows Communication Foundation)有很好的支持,Spring.Services程序集下封装了创建和调用WCF的方法。以往,我们使用svc文...

微软项目技术结构思路 ExtJs/JQuery + Asp.net MVC + Wcf service + Entity Framework

正文:  这一阵子在做一个项目, 客户要求使用ExtJs/ vs2008 sql server 2005, 也是好长时间没有去看新的技术和一些框架;  初步设计是准备使用 ExtJs + HTTPHa...

仿制任务栏托盘//.net//WCF架构

private static Panel Var_Panel = new Panel();//创建静态字段 private static PictureBox Var_Pict = ...
  • Agnesi
  • Agnesi
  • 2014年10月20日 18:30
  • 304

How to Change .NET Configuration Files at Runtime (including for WCF)

One of the most common issues people run into with WCF configuration, and .NET applications in gener...

WCF和ASP.NET Web API

一、WCF是什么?        Windows Communication Foundation(WCF)是由微软开发的一系列支持数据通信的应用程序框架,可以翻译为Windows 通讯开发平台。  ...

SilvelLight利用ADO.NET和WCF RIA Service 与数据库交互

概览 这个例子将为我们展示如下的功能: 1)使用DataForm实现数据的输入,并在对应的数据库表中生成对应行。 2)将后台数据库将得到的相关数据传回至DataGrid,并利用DataGrid对数据进...
  • FoxMomi
  • FoxMomi
  • 2014年12月31日 17:08
  • 634

【.Net码农】huangxincheng一线码农系列--wcf系列学习5天速成

wcf系列学习5天速成——第五天 服务托管 摘要: 今天是系列的终结篇,当然要分享一下wcf的托管方面的知识。wcf中托管服务一般有一下四种:Console寄宿: 利于开发调试,但不是生...

ASP.NET中WCF框架应用程序建立以及框架概念理解

Windows Communication Foundation (WCF) 是用于构建面向服务的应用程序的框架。  它是由微软发展的一组数据通信的应用程序开发接口,可以翻译为Windows通...

.Net Remoting与WCF实现Server与Client通讯比较

 .Net Remoting与WCF实现Server与Client通讯比较 2011-11-13 13:51:36     我来说两句       收藏    我要投稿   ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:.net wcf 并发
举报原因:
原因补充:

(最多只允许输入30个字)