2010-12-07 87 views
0

我有一个MVC ASP.NET应用程序,在视图的document.ready内部,使用$ .ajax对特定操作进行N次调用。这个动作反过来在WCF服务中调用一个方法。这个方法访问一个对象的队列并将它出队,最后它返回一个对象,这个对象中的一个属性被调用操作返回为JSON,返回到$ .ajax调用,它通过'成功'参数。WCF并发问题

问题是,它不是同时运行,由数据log4net生成。大多数时候,同一个线程处理所有的WCF调用。从开始和结束时间来看,它们都是连续的。 我们没有得到任何错误,所有的调用都成功执行,但由于它们不是并发的,所以我有一个性能问题。

重要提示: 我已经使用InstanceContextMode = InstanceContextMode.Single,ConcurrencyMode = ConcurrencyMode.Multiple来修饰WCF服务。 $ .ajax调用是async:true(默认值,我实际上不改变它)。 服务正在使用netTcpBinding。

任何想法?

+0

您是否正在调用Web服务的控制器操作中使用Sessions? – 2010-12-08 07:34:26

+0

一点都不,我倾向于避免Sessions。 – viniciushana 2010-12-09 12:43:09

回答

0

我知道IE恰好限制了两个并发的ajax调用到一个域,不知道它是否是浏览器问题。虽然Silverlight文章this link可能会有所帮助。

另外,您是否确认了serviceBehavior中的值,特别是maxConcurrentCalls