我试图在PerSession和PerCall中配置我的wcf webhttpbinding(restful)服务。
据我所知,webhttpbinding不使用会话来满足其他原则,但是当我从LoadUI加载我的服务时,我看到了显着的性能差异。
Persession和PerCall不应该以相同的方式行事,因为每次调用都会创建一个新的服务实例,因为webhttpbinding中没有会话。
答案 0 :(得分:2)
REST服务体系结构是无状态的(REST WS),因此使用
进行休息服务是没有意义的InstanceContextMode = PerSession.
使用PerSession
(但可能出现并发问题)的性能改进是为了
SOAP Web服务。
回答你的问题我相信这是一个幸运的一系列事件(数据库连接池,数据库缓存等),你可以看到性能提升。
由于InstanceContextMode.PerCall
是WCF的无状态模式,即使您将PerSession
指定为InstanceContextMode
,它也是您的休息服务的实例化模式。