C#请求队列

Sim*_*ang 3 c# asp.net request-queueing

我的Web服务使用另一个API来获取数据.我缓存数据,清理数据并在用户发出请求时将其返回给用户.目前我收到了很多请求,因为我每秒只能访问数据API 2次,我收到错误,这意味着有些用户无法获取数据,而其他用户则无法获取数据.

我想要做的是将每个请求添加到队列中并逐个处理它们,它们之间有0.4秒的休眠时间.他必须一直运行队列以确保处理所有请求.

我将如何在ASP.NET 3.5中执行此操作?

Joh*_*ers 5

简而言之,我建议您创建一个Windows服务来处理MSMQ队列.您现有的Web服务会将请求放入该队列.

但是,您的服务需要成为异步Web服务.这样,在"等待"响应时,您的服务将不会阻止请求线程.

顺便说一下,您使用的是ASMX Web服务还是WCF服务?这将决定如何使服务异步.