Web服务不处理同时请求

时间:2014-01-31 09:57:43

标签: asp.net web-services iis

我在内联网上有一个基本上发送电子邮件的网络服务。

在各种Web应用程序中 - 当要向几百人发送电子邮件时,主题,收件人列表等存储在数据库中,并且对Web服务进行异步调用以发送电子邮件。

Service1 myMailService = new Service1();
myMailService.SendMailAsync(EmailID);

Web服务从数据库中检索数据,并通过发送电子邮件的收件人进行操作。发送几百封电子邮件可能需要几分钟时间。这个过程没问题 - 因为电子邮件(通常)会被发送。

但是,似乎有3个人都打开了应用程序,并且几乎同时发送电子邮件,并非所有请求都被处理。就好像Web服务无法处理同时发出的请求。我一直假设一个Web服务能够处理同时发出的请求并自己处理线程。

默认情况下,Web服务是否能够同时处理请求?

这是运行IIS 7的Windows Server Standard - Service Pack 2

网络服务非常简单。

public class Service1 : System.Web.Services.WebService
{
[SoapDocumentMethod(OneWay = true)]
public void SendMail(int EmailID)
{
//connect to the database, get a DataSet containing MessageDetails, List of Attachments, List of Recipients
//loop through the various data tables in the DataSet to get the data to create the email
//there are lots of try/catch/finally statements to make sure the database connection is closed
//send the email
smtpClient.Host = "myServer";
smtpClient.Send(message);
}

0 个答案:

没有答案