Indeed, it is likely that you are running into the limit of 10 users on
Windows XP. But even if you upgraded to Windows 20003 Server which does not
have this limit, it is still possible to overflow the IIS request queue. You
can increase the request queue size through IIS configuration, but if you
push many requests you can eventually overflow the queue no matter how large
you make it.
The real solution IMO is to handle the error in the client, wait for a while
and then retry the requests that failed.
Regards.
Sami
"John Bailo" <jabailo@texeme.com> wrote in message
news:rPudnfNehesKmVLfRVn-hw@speakeasy.net...[color=blue]
>
> More info. See article below.
>
> So, what I think is:
>
> My dev workstation is an XP Pro machine. I'm assuming that it has the 10
> user limit ( which is great from a marketing perspective that M$ can limit
> people from running an XP server, but sucks eggs as far as me, the
> developer, wanting to benchtest a production web service locally!) The
> article says that even if I disable the keep-lives, I still am up against
> the 10 person limit....in fact, by disabling the keep alives, my web
> service calls probably happen so fast they overwhelm the II5 server on XP
> and thus the lock up decribed below ( possibly ).
>
> So, my guess is the disabling of the Keep-Alives on my production web
> server ( which is running 2k server ) may have the intended effect of
> lessening the number of calls to the web service that return the 403.9
> error.
>
> We'll see!
>
>
http://support.microsoft.com/default...b;en-us;262635
>
> Error Message: HTTP 403.9 - Access Forbidden: Too many users are connected
>
> RESOLUTION
> If more than ten connections are needed, use the version of IIS 5.0 that
> is included in Windows 2000 Server.
>
> If you use IIS 5.0 on Windows 2000 Professional or IIS 5.1 on Microsoft
> Windows XP Professional, disable HTTP keep-alives in the properties of the
> Web site. When you do this, a limit of 10 concurrent connections still
> exists, but IIS does not maintain connections for inactive users.
>
>
>
> John Bailo wrote:[color=green]
>>
>> Well, maybe not.
>>
>> I set the keep alives off and when I ran the program, it loaded 20
>> records and then locked up in studio without ever getting to a breakpoint
>> or error.
>>
>> John Bailo wrote:
>>[color=darkred]
>>>
>>> This might be an answer:
>>>
>>>
http://www.dotnet247.com/247referenc...43/219122.aspx
>>>
>>> "I eventually found a couple KB article explaining this and the solution
>>> (262635 - Error Message: HTTP 403.9 - Access Forbidden: Too Many Users
>>> Are
>>> Connected, 308186 - HOW TO: Optimize Web Server Performance in Windows
>>> 2000). The keep-alives can be disabled through IIS admin interface. This
>>> resolves my problem."
>>>
>>>
>>>
>>> John Bailo wrote:
>>>
>>>>
>>>> Ok, we're getting closer.
>>>>
>>>> Using Sami's advice, I nested the End_ method in a try/catch block.
>>>>
>>>> I immediately saw an error, but I'm not sure what to do about it.
>>>>
>>>> So, I called the web service 380 times, once for each record in a file,
>>>> in quick succession. For 29 of those calls, the method threw this
>>>> error:
>>>>
>>>> "The request failed with HTTP status 403: Access Forbidden."
>>>>
>>>> Can anyone suggest why the web service would throw this error 29 times
>>>> out of 380 when called asynchronously?
>>>>
>>>>
>>>>
>>>> Sami Vaaraniemi wrote:
>>>>
>>>>> There is a client-side limit to how many simultaneous calls you can
>>>>> make from one AppDomain to one web service (see the
>>>>> ServicePointManager.DefaultCon*nectionLimit property). Make sure that
>>>>> the calls are not dropped in the client side. You should see an
>>>>> exception in the callback of the async call if the call is not
>>>>> completed.
>>>>>
>>>>> Also, you could try debugging the problem by using your own threads to
>>>>> issue the calls instead of using the built-in BeginXXX methods. This
>>>>> way you could log every outgoing call and determine if and where the
>>>>> calls are dropped.
>>>>>
>>>>> Regards,
>>>>> Sami
>>>>>
>>>>> <jabailo@texeme.com> wrote in message
>>>>> news:sJydnbknyP1q5VDfRVn-sQ@speakeasy.net...
>>>>>
>>>>>> I would buy that explaination, except the web service server logs (
>>>>>> iis ) don't show those missing calls.
>>>>>>
>>>>>> So, where are those calls?
>>>>>>
>>>>>> Waleed Abdulla xrules org> <waleed_abdulla wrote:
>>>>>>
>>>>>>> It could be that error messages are generated, but not received.
>>>>>>> This is the case with one-way Web services where the Web service is
>>>>>>> defined to NOT return any value. In that case, the proxy sends the
>>>>>>> SOAP message and closes the connection right away without waiting to
>>>>>>> see if SOAP Faults are returned. Try to force your Web service to
>>>>>>> return some value (or change the proxy generated file) and try
>>>>>>> again. You might start receiving a lot of errors.
>>>>>>>
>>>>>>> Waleed
>>>>>>>
>>>>>>>
>>>>>>> "jabailo@texeme.com" wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> I wrote a program that loops through a file of records.
>>>>>>>>
>>>>>>>> It parses each line in the file and sends them to a web service
>>>>>>>> that inserts them into an AS400DB2 database using Asynch calls.
>>>>>>>>
>>>>>>>> This is the wierd part. Say their are 500 records in the file.
>>>>>>>>
>>>>>>>> If I run the process once, maybe 250 will appear.
>>>>>>>>
>>>>>>>> If I run it a second time, maybe 400 or all the records will
>>>>>>>> appear.
>>>>>>>>
>>>>>>>> Usually the third time I run it, all 500 appear.
>>>>>>>>
>>>>>>>> From the consuming program, that reads the records, there is never
>>>>>>>> any error message thrown. There are always 500 calls to the web
>>>>>>>> service.
>>>>>>>>
>>>>>>>> I can see from my web server logs that the service is just not
>>>>>>>> called when the records are not written, so I don't think its on
>>>>>>>> the database side.
>>>>>>>>
>>>>>>>> So my question is: If they don't error out, where do all these web
>>>>>>>> services calls go?? I ASP.NET webservices just that flawed and
>>>>>>>> inconsistent that it cannot be depended on for this type of
>>>>>>>> operation?
>>>>>>>>
>>>>>>>> Would a more robust web server such as Apache 2.0 help?
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>
>>>>>
>>>>>[/color][/color][/color]