Best pratices for long(ish) running processes

Discussion in 'ASP .Net' started by BillAtWork, Oct 12, 2009.

  1. BillAtWork

    BillAtWork Guest

    Hi,
    I'm hoping to find best practices for implementing an asp.net process, for
    many 1000's of users, that is mainly "waiting" for data from an external
    service. Platform is c#, IIS, asp.net 3.5, sql server 2005. Note that
    processing is mostly taken up waiting for the external web service - the
    actual workload on our side is quite light.

    The process that is called asynchronously from the browser for each user. It
    may take around 10-40 seconds to complete. Note that the user's browser is
    NOT tied up during this time and is not "waiting" for the results - they will
    simply appear upon the user's next refresh of data.

    Is IIS being "tied up" in any way while waiting for this external service? I
    don't think this is about asynchronous calls since the only thing "waiting"
    is IIS. The users are fine. I'm trying to ascertain what's going on when you
    have 1000's of simultaneous processes, each waiting for something. Perhaps
    it's not even an issue and it's just what IIS does for a living!

    Thanks for any help!
    BillAtWork, Oct 12, 2009
    #1
    1. Advertising

  2. BillAtWork

    Mr. Arnold Guest

    "BillAtWork" <> wrote in message
    news:...
    > Hi,
    > I'm hoping to find best practices for implementing an asp.net process, for
    > many 1000's of users, that is mainly "waiting" for data from an external
    > service. Platform is c#, IIS, asp.net 3.5, sql server 2005. Note that
    > processing is mostly taken up waiting for the external web service - the
    > actual workload on our side is quite light.
    >
    > The process that is called asynchronously from the browser for each user.
    > It
    > may take around 10-40 seconds to complete. Note that the user's browser is
    > NOT tied up during this time and is not "waiting" for the results - they
    > will
    > simply appear upon the user's next refresh of data.
    >
    > Is IIS being "tied up" in any way while waiting for this external service?
    > I
    > don't think this is about asynchronous calls since the only thing
    > "waiting"
    > is IIS. The users are fine. I'm trying to ascertain what's going on when
    > you
    > have 1000's of simultaneous processes, each waiting for something. Perhaps
    > it's not even an issue and it's just what IIS does for a living!
    >
    > Thanks for any help!
    >


    Yes, IIS is being affected by this due to the fact that the application the
    Web service is using resources such as memory, threads and processing power
    to service the long requests. This could be a problem for you if the Web
    service and the ASP.NET UI front end applications are running on the same
    server, in speed to service other Web request problems and possible memory
    problems as well.

    Long running requests should be off loaded to another server, whereas, the
    Web service passes the requests off to another server taking the load of the
    front-end Web server, if this is your situation.

    This is one way to do it.

    http://www.devx.com/asp/Article/21782/1954

    Here is another way to do it by using SQL Server Service Broker. And I'll
    tell you that you can queue up processes that have nothing to do with
    database access.

    http://msdn.microsoft.com/en-us/library/ms345108(SQL.90).aspx


    Yet another way to do it is with Windows Workflow to take the load off the
    front-end Web server passing the process off to another server in the
    infrastructure.

    http://blogs.msdn.com/kaevans/archi...ies-implemented-asynchronous-webrequests.aspx









    __________ Information from ESET NOD32 Antivirus, version of virus signature
    database 4501 (20091012) __________

    The message was checked by ESET NOD32 Antivirus.

    http://www.eset.com




    __________ Information from ESET NOD32 Antivirus, version of virus signature database 4501 (20091012) __________

    The message was checked by ESET NOD32 Antivirus.

    http://www.eset.com
    Mr. Arnold, Oct 12, 2009
    #2
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Replies:
    4
    Views:
    549
    steve
    Nov 27, 2004
  2. Bruno Desthuilliers

    What's with "long running processes" ?

    Bruno Desthuilliers, Sep 17, 2007, in forum: Python
    Replies:
    1
    Views:
    310
    walterbyrd
    Sep 18, 2007
  3. Sam
    Replies:
    1
    Views:
    452
    Gregory A. Beamer
    Dec 2, 2009
  4. Trebek

    Best pratices ... advice -- client proxy from wsdl

    Trebek, Apr 30, 2004, in forum: ASP .Net Web Services
    Replies:
    2
    Views:
    131
    Trebek
    Apr 30, 2004
  5. BillAtWork

    Best practice for long(ish) processes

    BillAtWork, Oct 12, 2009, in forum: ASP General
    Replies:
    1
    Views:
    671
    Gregory A. Beamer
    Oct 12, 2009
Loading...

Share This Page