locked
rapid set of calls through ADO.NET Data Services client seems to result in 403.9 too many users connected response or timeout RRS feed

  • Question

  • This usually only manifests itself when I am running my unit tests but only a reset of IIS fixes it.  The library I have authored follows the following pattern:

    Entities svc = new Entities(new uri(endpoint));
    //do stuff

    Am I running out of connections to the web serer doing this?  Should I be sharing the DataContext?

    Friday, November 20, 2009 5:55 PM

All replies

  • Hello,

     

    Could you please provide us with more detailed information?  The IIS version and detailed exception information would be helpful.  Besides, these two articles might be helpful for you on unit testing ADO.NET Data Services,

    http://blogs.msdn.com/ploeh/archive/2009/01/13/unit-testing-ado-net-data-services.aspx

    http://blogs.msdn.com/ploeh/archive/2009/01/14/unit-testing-ado-net-data-service-clients.aspx

     

     

    Have a nice day!

     

     

    Best Regards,
    Lingzhi Sun

    MSDN Subscriber Support in Forum

    If you have any feedback on our support, please contact msdnmg@microsoft.com


    Please remember to mark the replies as answers if they help and unmark them if they provide no help.
    Welcome to the All-In-One Code Framework! If you have any feedback, please tell us.
    Monday, November 23, 2009 5:16 AM
    Moderator
  • I am using IIS6 and I do not have a detailed exception right now but the next time it happens I will copy it.  I believe it is simply a timeout.  If subsequent users attempt to connect they get a HTTP 403.9 - Access Forbidden: Too many users are connected.
    Monday, November 23, 2009 1:56 PM
  • Hi,

     

    How about the detailed exception?  Based on my understanding, too many requests are sent to the ADO.NET Data Services in a short period of time.  Here are some additional references about how to troubleshoot the problems in ADO.NET Data Services,

    http://consultingblogs.emc.com/simonevans/archive/2009/03/17/ado-net-data-services-diagnosing-problems-with-your-data-service.aspx

    http://www.infosysblogs.com/microsoft/2009/06/troubleshooting_wcf_service_ap.html

     

     

    Have a nice day!

     

     

    Best Regards,
    Lingzhi Sun

    MSDN Subscriber Support in Forum

    If you have any feedback on our support, please contact msdnmg@microsoft.com


    Please remember to mark the replies as answers if they help and unmark them if they provide no help.
    Welcome to the All-In-One Code Framework! If you have any feedback, please tell us.
    Wednesday, November 25, 2009 6:16 AM
    Moderator
  • From the infosys article...
    "Unlike ASMX services, the WCF services needs to be explicitly instantiated and once the service call is completed the proxy connection needs to be explicitly closed. Not doing so correctly can result in to server side WCF connection exhaustion ultimately leading to service denial.
    There may be scenarios where the concurrent users may be 2 or 3 and still the WCF connection pool may get exhausted, this can happen due to one of the possible condition"

    When I am making a call through the ADO.NET Data Services Client API Proxy, I do not see a way to close the connection explicitly; at least there is nothing on the DataServiceContext?
    Wednesday, November 25, 2009 1:52 PM
  • Hi – I think my information can help you:

    The 403.9 error message is a message you retrieve when you got many connections to your website. Another reason is because your resource monitor mechanism has identified a page on your Website that causes performance problem on the server processing resources.

    A typical 403.9 error looks like this:

             HTTP 403.9 – Too many users are connected Internet Information Services

    Enough with information: In order for you to avoid a message and a problem like the 403.9 error in the future, you’ll  need  to ensure that you’re code does not have any errors and that you can make is lot more efficient (As I told you the CPU on the server).

    Tips: Use Apache Server which is far better than Internet Information Service (IIS).
    Security Note: Please download the one which has SSL-support.

    Some useful links:
    ADO.NET Team Blog
    ADO.NET Data Services Team Blog 

    Have a nice day…

    Sincerely,
    Fisnik


    Coder24.com
    Friday, November 27, 2009 7:19 AM
  • Hi again:

    Here is the link to download Apache Server:
    http://www.apache.org/

    Have a nice day...

    Best regards,
    Fisnik
    Coder24.com
    Friday, November 27, 2009 7:22 AM
  • I was not aware that I could host ADO.NET Data Services in Apache.  [Anyway, it is moot because it is a requirement it be hosted in IIS.]
    Monday, November 30, 2009 4:45 PM
  • I was not aware that I could host ADO.NET Data Services in Apache.  [Anyway, it is moot because it is a requirement it be hosted in IIS.]

    Hi – I have more information to deliver:

    I think that you actually need to change HTTP-header settings and/or mime types for Apache, in order to get this to work on Apache, try this and tell me.


    Anyways: You can run ASP.NET C#-written Websites on Apache installed in a Linux environment. How? Well only one answer: Apache mod_mono.  

    Apache mod_mono allows you to config and run ASP.NET C#-based or written websites on Linux Web –Servers. I think you shall be able to apply the same method, or technique in a Windows® localhost-environment.

    There are actually tons of articles on the web you’ll just need to do some research.

    I would also suggest you, contacting any of the ADO.NET teams. I think that can help you as well.


    Some links:
    http://php.sys-con.com/node/1084931 [Microsoft starting off this year (2009) working on to make tools and integrate the PHP 5.0 web-programming language into next Visual Studio] -- Since they finally started to focus on PHP, many years back MS did not focus on the web, they only focused on the Windows OS, Microsoft Office and some other future ideas.

    http://www.intagleo.co.uk/risk_free_outsourcing/technologies.aspx [The LAMP Platform].

    I hope the above information was helpful…

    Have a nice day…

    Best regards,
    Fisnik


    Coder24.com
    Monday, November 30, 2009 5:51 PM
  • Any thoughts on this comment, anyone?
    Wednesday, December 2, 2009 12:46 PM
  • Hi,

     

    I will consult the product team for some ideas and keep you informed of any updated messages. 

     

    Have a nice day!

     

     

    Best Regards,
    Lingzhi Sun

    MSDN Subscriber Support in Forum

    If you have any feedback on our support, please contact msdnmg@microsoft.com


    Please remember to mark the replies as answers if they help and unmark them if they provide no help.
    Welcome to the All-In-One Code Framework! If you have any feedback, please tell us.
    Wednesday, December 2, 2009 12:59 PM
    Moderator
  • Hi,

     

    Could you please provide us with more detailed information for further troubleshooting?  

     

    1. What O/S is the customer hosting the Data Service on?

    2. After running how many requests does the customer see this error?

    3. Is the test multi-threaded or single threaded?

    4. Is the machine running the test the same as the machine running the Web Server?

     

    Besides, we can turn off Http Keep-Alives on the client and on the Web Server to make maximum use of the concurrent connections limit. 

     

    Have a nice day!

     

    Best Regards,
    Lingzhi Sun

    MSDN Subscriber Support in Forum

    If you have any feedback on our support, please contact msdnmg@microsoft.com


    Please remember to mark the replies as answers if they help and unmark them if they provide no help.
    Welcome to the All-In-One Code Framework! If you have any feedback, please tell us.
    Wednesday, December 2, 2009 3:07 PM
    Moderator
  • I am using IIS6 and 
    There we have it, he is running the Windows XP Operating System (OS) with Internet Information Service (IIS) 6.0.
    A quick note: Even if you disable the "HTTP Keep-Alive" - you'll still get this, because, Windows XP and IIS6.0 has a
    limitation of only 10 concurrent connections according to Microsoft Support

    A quick thing to try is this:

    This C:\inetpub\adminscripts folder has something that can use to change the limitation of concurrent connections.

     1. Press Windows + R, this will open Run.
     2. Type cmd.exe and press Enter or click OK.
     3. Now navigate to that dir, by typing in the following:
       
                   cd C:\inetpub\adminscripts

     4. Now type in the following:
       
                  script adsutil.vbs set w3svc/MaxConnections 15

    Note: The limitation will now be 15 and NOT 10, but you can probably type in 50 or more instead.

    Links:
    Using the Adsutil.vbs Administration Script (IIS 6.0).
    http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/d3df4bc9-0954-459a-b5e6-7a8bc462960c.mspx?mfr=true

    I hope this helps....

    Have a nice day...

    Best regards,
    Fisnik

    Coder24.com
    Wednesday, December 2, 2009 6:24 PM
  • 1.  Currently, it is still in development so Windows XP Pro
    2.  I would estimate 35
    3.  I have a utility that I wrote that is definitely single-threaded that sometimes causes the problem.
    4.  No, I am making the calls from my dev box to the development server with IIS.

    Thank you in advance so much for your help.
    Thursday, December 3, 2009 2:51 PM
  • Hi,

     

    Thank you very much for providing us with the detailed information. 

     

    I will send your information to the product team for further investigation and keep you informed of any new messages.  Thanks for you patient!

     

    Have a nice day!

     

    Best Regards,
    Lingzhi Sun

    MSDN Subscriber Support in Forum

    If you have any feedback on our support, please contact msdnmg@microsoft.com


    Please remember to mark the replies as answers if they help and unmark them if they provide no help.
    Welcome to the All-In-One Code Framework! If you have any feedback, please tell us.
    Thursday, December 3, 2009 3:52 PM
    Moderator
  •  

    Hi,

     

    From the feedback of the product team, it is recommended to change the OS to real Server OS, because Windows XP Pro is not a Server Operating system.  The error HTTP 403.9 is expected behavior. 

     

    This article is about Windows 2000, but it has similar limitation applies to XP as well:

    http://support.microsoft.com/kb/262635

     

    Have a nice day!

     

    Best Regards,
    Lingzhi Sun

    MSDN Subscriber Support in Forum

    If you have any feedback on our support, please contact msdnmg@microsoft.com


    Please remember to mark the replies as answers if they help and unmark them if they provide no help.
    Welcome to the All-In-One Code Framework! If you have any feedback, please tell us.
    Tuesday, December 8, 2009 3:21 AM
    Moderator
  • Hi,


    Do you need any further assistance?   

     

    Have a nice day!

     

    Best Regards,
    Lingzhi Sun

    MSDN Subscriber Support in Forum

    If you have any feedback on our support, please contact msdnmg@microsoft.com


    Please remember to mark the replies as answers if they help and unmark them if they provide no help.
    Welcome to the All-In-One Code Framework! If you have any feedback, please tell us.
    Thursday, December 10, 2009 12:40 AM
    Moderator
  • Hi vhcvmmvmv:

    Did you try the steps I provided you with?

    Have a nice day...

    Best regards,
    Fisnik
    Coder24.com
    Thursday, December 10, 2009 6:30 AM
  • Yes, I do.  I have moved the service to Windows 2003 and the problem is still occurring.
    Thursday, December 10, 2009 6:57 PM
  • Have you tested to follow the steps I provided you?

    To change the limitation level!


    Coder24.com
    Thursday, December 10, 2009 7:02 PM
  • Hi,

     

    Have you tried turning off Http Keep-Alives?

     

    Have a nice day!

     

    Best Regards,
    Lingzhi Sun

    MSDN Subscriber Support in Forum

    If you have any feedback on our support, please contact msdnmg@microsoft.com


    Please remember to mark the replies as answers if they help and unmark them if they provide no help.
    Welcome to the All-In-One Code Framework! If you have any feedback, please tell us.
    Friday, December 11, 2009 3:17 AM
    Moderator
  • Hi vhcvmmvmv:

    Windows Server 2003 might be different than a normal client based Windows XP.
    Check this webhosting page: http://www.webhost4life.com/Web_hosting.asp

    Windows Web Hosting Features
    • Hosting in Windows 2003 Server IIS 6.0
    That's what they use.

    So by using Windows Server 2003 things shouln't go wrong, and your problem might be solved now.

    Some helpful links as well
    HOW TO: Use Host Header Names to Configure Multiple Web Sites in Internet Information Services 6.0:
    http://support.microsoft.com/default.aspx/kb/324287

    HTTP 1.1 host headers are not supported when you use SSL:
    http://support.microsoft.com/kb/187504

    What's New in Internet Information Services 6.0:
    http://www.microsoft.com/windowsserver2003/evaluation/overview/technologies/iis.mspx

    Windows Server 2003 Center:
    http://technet.microsoft.com/en-us/windowsserver/2003/default.aspx

    Some recommendations
    I recommend you to upgrade to Windows 7 Ultimate and Windows Server 2008 RC2 instead,
    because you will get the IIS7.0 instead of the old 6.0, and you have a lot more tools.  

    Have a nice day...

    Best regards,
    Fisnik
    Coder24.com
    Friday, December 11, 2009 6:38 AM
  • Also, some further information.  I self-hosted the service in a console application taking it out of IIS and the problem still occurs. 
    Friday, December 11, 2009 1:49 PM
  • Hi – there appear differences:

    Self-Hosting
    When self hosting you’re required to add managed code to host the process, the code/application can either be a Windows Forms application or a Console app (Console applications are more often used for the purpose of the self hosting). Another thing you must keep- in-mind when self hosting, is that the host process must be running before a request is sent by the client.  

    IIS Hosting
    The main advantage of hosting a “service” in Internet Information Service (IIS) is that the host process is triggered automatically upon the first Client request. On the other hand, the disadvantages are that only HTTP-protocol can be used and that all the services will run using the same port.  

    The difference between IIS Hosting and Self-Hosting
    Using IIS then the Host Process Lifecycle is managed by IIS, while in Self-Hosting the developer manages the lifecycle of the Host Process.

    Have a nice day…

    Best regards,
    Fisnik


    Coder24.com
    Saturday, December 12, 2009 10:35 AM
  • Hi vhcvmmvmv:

    How is the situation on your side?
    Is this thread solved or NOT?

    This thread shall be solved since we
    have already provided you with enough
    information.

    Have a nice day...

    Best regards,
    Fisnik


    Coder24.com
    Tuesday, December 15, 2009 4:52 AM
  • Just an update.  My problem seems to be linked to the DevArt dotConnect for Oracle driver I am using and their management of the connection pool.  For those affected, you can follow the thread here: http://www.devart.com/forums/viewtopic.php?p=52183#52183
    Tuesday, December 22, 2009 9:19 PM
  • Hello,

     

    Thank you so much for your update.  So this problem is more related to a third party data provider?  Is that correct?  

     

    Merry Christmas!

     

    Best Regards,
    Lingzhi Sun

    MSDN Subscriber Support in Forum

    If you have any feedback on our support, please contact msdnmg@microsoft.com


    Please remember to mark the replies as answers if they help and unmark them if they provide no help.
    Welcome to the All-In-One Code Framework! If you have any feedback, please tell us.
    Thursday, December 24, 2009 3:30 AM
    Moderator
  • DevArt dotConnect for Oracle driver I am using and their management of the connection pool. 
    Yes, this is related to Third-party data provider.

    Oracle is one of the largest software companies on the market today,
    and they provide Databases and other DATA and SQL providing components
    and tools.

    Oracle has even brought Sun Systems a company which made JAVA Platform and

    Visit: http://www.oracle.com/index.html

    Merry Christmas...(Very nice we got some snow suddenly).

    Have a nice day...

    Best regards,
    Fisnik
    Coder24.com
    Thursday, December 24, 2009 7:22 PM