wcf的连接数】的更多相关文章

</standardEndpoints> <behaviors> <serviceBehaviors> <behavior name="throttlingBehavior"> <serviceThrottling maxConcurrentCalls="1000" maxConcurrentInstances="1000" maxConcurrentSessions="1000&q…
找了一天,发现原因是配置的连接字符串没有加上最大连接数,所以每次请求都是一直增加,而MariaDB默认的连接数是151,为了本地多项目测试已改成以前. 下面是配置的连接字符串:  <add name="Context" connectionString="server=10.10.0.241;user id=root;Password=数据库密码;database=数据库名称;persist security info=False;Protocol=TCP; Pooli…
一.性能概述 WCF服务的性能取决于很多因素.出了CPU.RAM和网络性能等常见的因素外,实例上下文模式.并发模式.数据契约的设计或使用的绑定等与WCF有关的因素都起着重要的作用. 实例上下文模式用来控制服务对象的实例化行为有PerCall.PerSession和Singleton三种模式可供选择. 绑定决定了传输协议和编码格式.此外,通过绑定可以使用很多的WS*协议. 并发模式决定了是否允许多个线程同时访问同一个对象.并发模式是有[ServiceBehavior]特性来控制的,它的默认值为Co…
WCF实例化模式与高并发控制 1.实例化模式InstanceModel 1.1 PerCall:单调模式 每次调用都会产生一个实例 例[ServiceBehavior(InstanceContextMode=InstanceContextMode.PerCall)] 1.2 PerSession会话模式 每次调用都有同一个服务进行处理 [ServiceBehavior(InstanceContextMode=InstanceContextMode.PerSession)] 1.3 SingleT…
在使用WCF做服务接口时,TCP模式肯定比Http效率高,Binary/MTOM格式的绑定也会Text格式的绑定高效. 两个endpoint,一个用来调试:ms-mex的binding是用来方便WCF调试工具和远程对象应用,另一个是实际工作模式配置:customBinding. 为了提高接口的并发数,特实验custonBinding各个参数对并发的影响,以下配置是目前实验tps较高的参数配置: <system.serviceModel> <services> <service…
回<[开源]EFW框架系列文章索引>        EFW框架源代码下载V1.3:http://pan.baidu.com/s/1c0dADO0 EFW框架实例源代码下载:http://pan.baidu.com/s/1eQCc69G        前言:以前的系统都是直接客户端直连数据库服务器,后来考虑到服务器的安全性.数据库连接数的限制.分布能力差等问题,特别是那几年中间件.SOA.ESB等炒得比较火,为了跟上时代脚本有必要开发一个中间件,把后台逻辑业务在中间件中运行.刚开始考虑过WebS…
在做WCF开发时,会经常碰到超时的情况,总结了一下,主要是由一下原因引起: 1.客户端没有正确地Close. 确保每次客户端调用完毕之后,就要调用Close,保证连接数. 另外,服务端配置最大连接数: <serviceBehaviors> <serviceThrottling maxConcurrentCalls="200" maxConcurrentSessions="100" maxConcurrentInstances="100&q…
前言 最近系统上线完修改完各种bug之后,功能上还算是比较稳定,由于最近用户数的增加,不知为何经常出现无法登录.页面出现错误等异常,后来发现是由于WCF服务时不时的就死掉了.后来就开始分析问题.得到的初步解决方案如下: 1.在Web端调用WCF服务使用后,未释放未关闭导致新的链接无法访问 2.增加默认的连接数,系统默认的链接数比较小 3.提供同一个WCF服务的不同实例 1.在Web端调用WCF服务使用后,未释放未关闭导致新的链接无法访问 首先保证客户端每次建立的连接在使用完成后进行关闭.那么请不…
WCF服务运行一段时间后客户端无法连接WCF服务的解决办法 (转) Windows Communication Foundation (WCF)是Microsoft为构建面向服务的应用提供的分布式通信编程框架,是.NET Framework 3.5的重要组成部分.使用该框架,开发人员可以构建跨平台.安全.可靠和支持事务处理的企业级互联应用解决方案. 简单的说,WCF能够提供Web应用(比如一个动态网页)调用一个后台应用程序若干API的需求:也可以提供一个程序访问另外一个程序API的需求.通过WC…
WCF是DotNet体系中很重要的一项技术,但是组内很多组员通过书籍自学的时候 感觉涉及面太广.配置文件太复杂,新名词太多.抓不到头绪,有感于此,决定进行一次组内技术培训,顺便把培训讲义整理到blog上来.不求大而全,而是要 让初学者快速入门,因此想入实例入手,并刻意隐藏一些初期用不到的内容,以降低入门门槛.有任何错误欢迎指正. 注:本系列文章基于.Net Framework 3.5,以教程的最后会归纳一下到了4.0中有哪些差异. ----------------------- 分隔线 ----…
WCF 跟并发 性能相关的几个配置:1.系统控制的客户端网络连接并发(如果服务端也需要并发请求的话这个参数也是需要的):          <configuration>                <system.net>                        <connectionManagement>                                   <add address="*" maxconnection…
系统上线后WCF服务最近经常死掉的原因分析总结   前言 最近系统上线完修改完各种bug之后,功能上还算是比较稳定,由于最近用户数的增加,不知为何经常出现无法登录.页面出现错误等异常,后来发现是由于WCF服务时不时的就死掉了.后来就开始分析问题.得到的初步解决方案如下: 1.在Web端调用WCF服务使用后,未释放未关闭导致新的链接无法访问 2.增加默认的连接数,系统默认的链接数比较小 3.提供同一个WCF服务的不同实例 1.在Web端调用WCF服务使用后,未释放未关闭导致新的链接无法访问 首先保…
基于WCF MSMQ 的企业应用解决方案   最近研究了一下基于MSMQ的WCF应用,从书上.网上查了很多资料,但始终没能彻底理解WCF-MSMQ的工作原理,也没能得到一个合理的应用解决方案.索性还是自己做个实验,探索一下吧.经过反复试验,颇有收获,现跟大家分享一下. 首先我的解释一下为什么查了那么多资料却未能理解WCF-MSMQ的工作原理,不是各位大牛没有把原理讲清楚,而是大多数给出的例子都是在单机上运行的,这就很难说明白离线工作的原理. 为了说明问题,我用了四台虚机来部署我的实验程序,首先我…
由于WCF的机制,连接池会在连接建立一定时间后超时,即使设置了超时时间非常长,也可能被服务端系统主动回收.之前做项目时碰到了这个问题,所以项目上考虑采用长连接,自动管理连接池,当连接超时后,自动重建,保持会话,这样在业务层就不需要再去处理连接超时的问题.具体的思路是,在程序启动时,先将需要使用长连接的连接放到长连接容器中,并设置连接的最大数量,在使用时,轮询使用连接,当使用时捕获到异常时,自动切换到下一个连接,并重建上一个连接.代码如下: AliveConnection类功能是保持连接,具体执行…
入门,构建第一个WCF程序 1.服务端 建立一个控制台应用程序作为Server,新建一个接口IData作为服务契约.这个契约接口一会儿也要放到Client端,这样双方才能遵循相同的标准.别忘了添加对 针对这个接口建立实现类,这个类才是真正干活的,工作在服务端,不出现在客户端: using System; using System.Text; namespace Server { /// <summary> /// 实现IData接口,此处不需要写契约标记 /// </summary>…
说到wcf,本人也是刚刚使用所以不是很熟悉 在做项目的时候采用webservice+客户端程序架构 写了一个wcf中的webservice之后,又写了很多的客户端exe程序,有的是轮询调用这个webservice方法,有的是仅仅调用一次webservice方法的exe程序, 在单元测试的时候都是没有遇到问题,结果却在做整合测试的时候发现发现了如下的错误,倒是所有程序都不能正常运行: System.TimeoutException: The request channel timed out wh…
摘要:今天看了一些官方的资料和配置,简单写了一个WCF服务来传递一个文件,借此看看WCF传输大文件的能力,这里采用的是NetTcp绑定,之所以没有采用 basicHttpBinding是因为考虑这种方式和WebService相近,大家都写的比较多了. 1. 服务实现 服务中有一个上传二进制流的方法UpLoad: [ServiceContract] public interface IAddService { [OperationContract] void UpLoad(byte[] file)…
.NET 跨平台RPC框架DotNettyRPC   DotNettyRPC 1.简介 DotNettyRPC是一个基于DotNetty的跨平台RPC框架,支持.NET45以及.NET Standard2.0 2.产生背景 传统.NET开发中遇到远程调用服务时,多以WCF为主.而WCF虽然功能强大,但是其配置复杂,不易于上手.而且未来必定是.NET Core的天下,WCF暂不支持.NET Core(只有客户端,无法建立服务端).市面上的其他.NET的 RPC框架诸如gRPC.surging甚至微…
做项目的时候发现 频繁调用WCF服务时 明明一次性发起了几十个请求 而在服务端记录的日志却显示出现了排队的迹象 并且都是最大并发数为2 在网上狂搜 大家给出来的解决方法都是增加web.config里面bingding的最大连接数 我试过之后依旧没有啥用 后来在一个csdn的帖子里面一个哥们说他也遇到了类似的状况 后面他采用了tcp方式的wcf问题就解决了 感觉改动太大无奈放弃 最后在https://stackoverflow.com/questions/25792484/wcf-keepaliv…
1. maxBufferSize 一个正整数,指定内存中用于存储消息的缓冲区的最大大小(字节). 如果 transferMode 属性等于 Buffered,则此属性应等于 maxReceivedMessageSize 属性值. 如果 transferMode 属性等于 Streamed,则此属性不能大于 maxReceivedMessageSize 属性值,应当至少为标头的大小. More info : http://msdn.microsoft.com/en-gb/library/syste…
一般对于提供出来的接口,虽然知道在哪些业务场景下才会被调用,但是不知道什么时候被调用.调用的频率.接口性能,当出现问题的时候也不容易重现请求:为了追踪这些内容就需要把每次接口的调用信息给完整的记录下来,也就是记录日志.日志中可以把调用方ip.服务器ip.调用时间点.时长.输入输出都给完整的记录下来,有了这些数据,排查问题.重现异常.性能瓶颈都能准确的找到切入点. 这种功能,当然没人想要去在每个Operation里边插入一段代码,如果有类似AOP的玩意就再好不过了. wcf中有IDispatchM…
日前我开发的服装DRP需要用到即时通信方面的技术,比如当下级店铺开出零售单时上级机构能实时收到XX店铺XX时XX分卖出XX款衣服X件之类的信息,当然在上级发货时,店铺里也能收到已经发货的提醒.即时通信技术能运用到DRP系统的很多方面,若深入下去,甚至可以开发一个系统内部的通讯模块,类似于QQ.当前大部分的企业管理系统开发类似功能,使用的都是效率及其低下的定时拉数据的方式,即每隔一段预定时间去数据存储区(一般为数据库)读取数据,然后在代码层判断,若数据同内存数据一致则丢弃,否则更新内存数据并同步更…
问题: 线上正式环境调用WCF服务正常,但是每次使用本地测试环境调用WCF服务时长就是出现:套接字连接已中止.这可能是由于处理消息时出错或远程主机超过接收超时或者潜在的网络资源问题导致的.本地套接字超时是"00:05:30" 这个问题,查阅了网上很多资料各种说法的都有,有的说是什么请求站点不在同一个域下,有的说什么应为datatable中有一个属性没有赋值各种答非所问的问题.其实从错误信息中就可以看出来其实就是调用超时了. 解决方案: 在调用wcf的服务端的web.config中配置n…
Windows服务的制作.安装可以参考这篇: C#.NET 操作Windows服务(安装.卸载) - runliuv - 博客园 (cnblogs.com) 本篇会在这个解决方案基础上,继续修改. 一.制作WCF 我们在原有解决方案上添加一个"WCF 服务库",为名"WcfYeah". 在WcfYeah中额外引用System.ServiceModel.Web.dll程序集. 修改IService1.cs: using System.Runtime.Serializa…
原来IDFA(IOS推广获取到用户IOS手机的唯一标识,如果不刷机的话跟安卓的IMEI一样)在公司正常的页面是公用用一个网站和数据库的. 起初怀疑并发数太多,把数据库连接池的数量从一百设置到三百,确实有点反应,但是支持不到一天就又报错. 查看了webapi连接wcf很多都超时,一台api和wcf不够用然后叫运维从一台服务器扩展到多台,报错的频率比原来低了. 看到网上设置是不是因为WCF不是多线程的原因,然后造成等待超时,然后设置了WCF支持多线程,但是还是没有多少作用. [ServiceBeha…
       上接WCF学习之旅—第三个示例之一(二十七)               WCF学习之旅—第三个示例之二(二十八)              WCF学习之旅—第三个示例之三(二十九)           在上一篇文章中我们创建了WCF服务端应用程序,在这一篇文章中我们来学习如何创建WCF的服务端寄宿程序与客户端调用程序. 关于如何寄宿可以参考以下文章WCF学习之旅—WCF寄宿前的准备(八),WCF学习之旅—WCF服务部署到IIS7.5(九),WCF学习之旅—WCF服务部署到应用程序…
我不敢说俺的方法是最佳方案,反正这世界上很多东西都是变动的,正像老子所说的——“反(返)者,道之动”.以往看到有些文章中说,为每个客户端安装证书嫌麻烦,就直接采用把用户名和密码塞在SOAP头中发送,然后在服务器端自定义一个消息拦截器来验证用户名和密码. 以老周不靠谱的学识水平认为,这样做不好,直接把明文而且敏感信息放在SOAP头中传输,这尺度实在太大了,太暴露了,广电局是不会允许的,虽然现在流行穿得越少越好,但那些是婊子的境界.像用户名密码这些重要信息,怎么能直接传输呢,这很容易被偷窥的. 其实…
在上一篇烂文中,老周给大伙伴们介绍了 IErrorHandler 接口的使用,今天,老周补充一个错误处理的知识点——错误协定. 错误协定与IErrorHandler接口不同,大伙伴们应该记得,上回我们是把自己实现IErrorHandler接口的类型添加到ChannelDispatcher中的,也就是说,IErrorHandler处理的是通道层的错误,它可以捕捉到多个服务操作上发生的错误.而错误协定是面向协定层的,它是通过 FaultContractAttribute 来声明的,这个特性在上一篇文…
当被调用的服务操作发生异常时,可以直接把异常的原始内容传回给客户端.在WCF中,服务器传回客户端的异常,通常会使用 FaultException,该异常由这么几个东东组成: 1.Action:在服务调用中,action标头比较重要,它是塞在SOAP消息的Headers元素下面的,是消息头的一部分,action用来对服务操作进行定义的.用小学生能听懂的话说,就是某个服务操作的“学号”,通道层在消息调度时,会根据它来寻找要调用的Operation.记得老周举过例子,就好比你去王老板家里,你得知道王老…
这是今天作项目支持的发现的一个关于WCF的问题,虽然最终我只是添加了一行代码就解决了这个问题,但是整个纠错过程是痛苦的,甚至最终发现这个问题都具有偶然性.具体来说,这是一个关于如何自动为服务接口(契约)的每个操作添加FaultContract与WCF服务元数据发布的问题.接下来通过一个简单的实例来说明这个因为少写了一行代码引发的血案. 一.手工添加FaultContract WCF采用基于消息的通信方式,Endpoint的ABC三要素之一的契约(Contract)的本质就是定义消息的结构.契约不…