.net WCF自托管服务是否比IIS托管选项处理更多或更少的负载?

.net WCF自托管服务是否比IIS托管选项处理更多或更少的负载?,.net,wcf,iis,self-hosting,.net,Wcf,Iis,Self Hosting,托管选项是否会影响WCF服务可以处理的请求量?很难说-自我托管的主要原因可能是拥有更多的控制权,例如,能够根据需要调整系统 IIS托管非常方便且易于设置,它提供了服务的“按需”加载,例如,只有在实际收到请求时才加载服务主机 服务主机的这种持续加载(和卸载)可能会稍微影响性能—另一方面,自托管服务主机时,您可能会使用更多内存(因为服务主机始终处于活动状态且在内存中) 同样,这是一个内存与速度的折衷——自托管使用更多的RAM,但速度可能会快一点 Marc一旦服务运行,我预计不会有显著差异 但是,与任

托管选项是否会影响WCF服务可以处理的请求量?

很难说-自我托管的主要原因可能是拥有更多的控制权,例如,能够根据需要调整系统

IIS托管非常方便且易于设置,它提供了服务的“按需”加载,例如,只有在实际收到请求时才加载服务主机

服务主机的这种持续加载(和卸载)可能会稍微影响性能—另一方面,自托管服务主机时,您可能会使用更多内存(因为服务主机始终处于活动状态且在内存中)

同样,这是一个内存与速度的折衷——自托管使用更多的RAM,但速度可能会快一点


Marc

一旦服务运行,我预计不会有显著差异

但是,与任何性能问题一样,您只能通过在两种情况下使用实际负载测试您的服务并着眼于全局来获得有用的答案。例如,一个服务器可能会处理更多的请求,但内存成本略高

当然还有其他不同之处,例如,IIS托管(带有按需实例化)在满足idle的第一个请求时可能会稍微慢一点,这是否重要只有您才能知道。

一旦“都柏林”(一个专门构建的WCF托管环境)发布,使用它将是很自然的


编辑:这个答案最初是关于IIS和自托管之间的潜在差异,因为线程不同。但是,我没有错,请参阅下面的评论。

当然,如果您在IIS中托管,并且您有推荐的“每次调用”激活模式,IIS将(在最坏的情况下)不断地重复创建ServiceHost实例。一旦ServiceHost启动,我同意-这与预期没有任何区别。自托管WCF与在IIS中托管WCF一样具有多线程功能-我看不到pro IIS有任何好处。