Notify a Service Process

Discussion in 'ASP .Net' started by Peter, May 4, 2008.

  1. Peter

    Peter Guest

    I have a webpage which creates reports, a report can take few seconds or
    several minutes to create.
    This webpage calls a web service which in turn does a remoting call to a
    windows service and the service creates the report.

    My question is if a user cancels or closes the browser before the report is
    completed, but windows service is still in the process of creating a report
    how do I notify the service to quit creating a report because there isn't
    anyone to receive it?



    Thank You



    Peter
     
    Peter, May 4, 2008
    #1
    1. Advertising

  2. If you provide a Cancel button and trust the user to cancel only via this
    button, only than you will know about the cancellation. How to notify the
    windows service is up to the service. It may or may no provide an interface
    for that.

    But practically there is a little use in that since there is no reliable way
    to know if the user navigated away from your site. Thre are simply too many
    exit options.

    --
    Eliyahu Goldin,
    Software Developer
    Microsoft MVP [ASP.NET]
    http://msmvps.com/blogs/egoldin
    http://usableasp.net


    "Peter" <> wrote in message
    news:...
    >I have a webpage which creates reports, a report can take few seconds or
    >several minutes to create.
    > This webpage calls a web service which in turn does a remoting call to a
    > windows service and the service creates the report.
    >
    > My question is if a user cancels or closes the browser before the report
    > is completed, but windows service is still in the process of creating a
    > report how do I notify the service to quit creating a report because there
    > isn't anyone to receive it?
    >
    >
    >
    > Thank You
    >
    >
    >
    > Peter
    >
     
    Eliyahu Goldin, May 4, 2008
    #2
    1. Advertising

  3. Hi Peter,

    Regarding on the scenario you mentioned, when the web application consumer
    close the webbrowser, the ASP.NET server-side will not get any rapid
    notification of it. It does be a very common and typical limitation of
    http/web based application which is stateless with server.

    If the reporting generation task is long-run and you feel it critical and
    important to pause/cancel report generation whenever the client user close
    the webbrowser(before the report generation finishes), I think you can can
    consider the following approach:

    ** At your ASP.NET web application's page (which will let user send request
    for generating report), you need to add some additional code logic to to
    contantly ping the webservice or windows service to as to let the backend
    processing service know that the request client is still alive.

    ** you also need to apply a timeout policy at the report processing side.
    e.g. if the genreation hasn't finsihed, but it hasn't received notify from
    client side(to a certain sessionID) for a long time(exceed timeout), it
    will cancel the generation.

    for implementation, at web page side, you can consider using AJAX script
    call to send notify to server-side constantly.

    Sincerely,

    Steven Cheng

    Microsoft MSDN Online Support Lead


    Delighting our customers is our #1 priority. We welcome your comments and
    suggestions about how we can improve the support we provide to you. Please
    feel free to let my manager know what you think of the level of service
    provided. You can send feedback directly to my manager at:
    .

    ==================================================
    Get notification to my posts through email? Please refer to
    http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
    ications.

    ==================================================
    This posting is provided "AS IS" with no warranties, and confers no rights.



    --------------------
    >From: "Peter" <>
    >Subject: Notify a Service Process
    >Date: Sat, 3 May 2008 23:39:34 -0500


    >I have a webpage which creates reports, a report can take few seconds or
    >several minutes to create.
    >This webpage calls a web service which in turn does a remoting call to a
    >windows service and the service creates the report.
    >
    >My question is if a user cancels or closes the browser before the report

    is
    >completed, but windows service is still in the process of creating a

    report
    >how do I notify the service to quit creating a report because there isn't
    >anyone to receive it?
    >
    >
    >
    >Thank You
    >
    >
    >
    >Peter
    >
    >
    >
     
    Steven Cheng [MSFT], May 5, 2008
    #3
  4. Peter

    Peter Guest

    "Steven Cheng [MSFT]" <> wrote in message
    news:eek:...
    > Hi Peter,
    >
    > Regarding on the scenario you mentioned, when the web application consumer
    > close the webbrowser, the ASP.NET server-side will not get any rapid
    > notification of it. It does be a very common and typical limitation of
    > http/web based application which is stateless with server.
    >
    > If the reporting generation task is long-run and you feel it critical and
    > important to pause/cancel report generation whenever the client user close
    > the webbrowser(before the report generation finishes), I think you can can
    > consider the following approach:
    >
    > ** At your ASP.NET web application's page (which will let user send
    > request
    > for generating report), you need to add some additional code logic to to
    > contantly ping the webservice or windows service to as to let the backend
    > processing service know that the request client is still alive.
    >
    > ** you also need to apply a timeout policy at the report processing side.
    > e.g. if the genreation hasn't finsihed, but it hasn't received notify from
    > client side(to a certain sessionID) for a long time(exceed timeout), it
    > will cancel the generation.
    >
    > for implementation, at web page side, you can consider using AJAX script
    > call to send notify to server-side constantly.
    >
    > Sincerely,
    >
    > Steven Cheng
    >
    > Microsoft MSDN Online Support Lead
    >
    >
    > Delighting our customers is our #1 priority. We welcome your comments and
    > suggestions about how we can improve the support we provide to you. Please
    > feel free to let my manager know what you think of the level of service
    > provided. You can send feedback directly to my manager at:
    > .
    >
    > ==================================================
    > Get notification to my posts through email? Please refer to
    > http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
    > ications.
    >
    > ==================================================
    > This posting is provided "AS IS" with no warranties, and confers no
    > rights.
    >
    >
    >
    > --------------------
    >>From: "Peter" <>
    >>Subject: Notify a Service Process
    >>Date: Sat, 3 May 2008 23:39:34 -0500

    >
    >>I have a webpage which creates reports, a report can take few seconds or
    >>several minutes to create.
    >>This webpage calls a web service which in turn does a remoting call to a
    >>windows service and the service creates the report.
    >>
    >>My question is if a user cancels or closes the browser before the report

    > is
    >>completed, but windows service is still in the process of creating a

    > report
    >>how do I notify the service to quit creating a report because there isn't
    >>anyone to receive it?
    >>
    >>
    >>
    >>Thank You
    >>
    >>
    >>
    >>Peter
    >>
    >>
    >>

    >


    Thank you

    Sounds good ! - Well -- kind of, because this means a lot of work to get
    this working correctly :)
     
    Peter, May 5, 2008
    #4
  5. Thanks for your reply Peter.

    Yes, I agree that the real implementation will require lots of work.
    Actually, it is always not simple task to build a rich component that helps
    improve interaction between webpage client and server-side. Anyway, if
    there is anything else need help later, welcome to post here.

    Sincerely,

    Steven Cheng

    Microsoft MSDN Online Support Lead


    Delighting our customers is our #1 priority. We welcome your comments and
    suggestions about how we can improve the support we provide to you. Please
    feel free to let my manager know what you think of the level of service
    provided. You can send feedback directly to my manager at:
    .

    ==================================================
    Get notification to my posts through email? Please refer to
    http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
    ications.

    ==================================================
    This posting is provided "AS IS" with no warranties, and confers no rights.

    --------------------
    >From: "Peter" <>
    >References: <>

    <>
    >Subject: Re: Notify a Service Process
    >Date: Mon, 5 May 2008 08:43:53 -0500


    >
    >"Steven Cheng [MSFT]" <> wrote in message
    >news:eek:...
    >> Hi Peter,
    >>
    >> Regarding on the scenario you mentioned, when the web application

    consumer
    >> close the webbrowser, the ASP.NET server-side will not get any rapid
    >> notification of it. It does be a very common and typical limitation of
    >> http/web based application which is stateless with server.
    >>
    >> If the reporting generation task is long-run and you feel it critical and
    >> important to pause/cancel report generation whenever the client user

    close
    >> the webbrowser(before the report generation finishes), I think you can

    can
    >> consider the following approach:
    >>
    >> ** At your ASP.NET web application's page (which will let user send
    >> request
    >> for generating report), you need to add some additional code logic to to
    >> contantly ping the webservice or windows service to as to let the backend
    >> processing service know that the request client is still alive.
    >>
    >> ** you also need to apply a timeout policy at the report processing side.
    >> e.g. if the genreation hasn't finsihed, but it hasn't received notify

    from
    >> client side(to a certain sessionID) for a long time(exceed timeout), it
    >> will cancel the generation.
    >>
    >> for implementation, at web page side, you can consider using AJAX script
    >> call to send notify to server-side constantly.
    >>
    >> Sincerely,
    >>
    >> Steven Cheng
    >>
    >> Microsoft MSDN Online Support Lead
    >>
    >>
    >> Delighting our customers is our #1 priority. We welcome your comments and
    >> suggestions about how we can improve the support we provide to you.

    Please
    >> feel free to let my manager know what you think of the level of service
    >> provided. You can send feedback directly to my manager at:
    >> .
    >>
    >> ==================================================
    >> Get notification to my posts through email? Please refer to
    >>

    http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
    >> ications.
    >>
    >> ==================================================
    >> This posting is provided "AS IS" with no warranties, and confers no
    >> rights.
    >>
    >>
    >>
    >> --------------------
    >>>From: "Peter" <>
    >>>Subject: Notify a Service Process
    >>>Date: Sat, 3 May 2008 23:39:34 -0500

    >>
    >>>I have a webpage which creates reports, a report can take few seconds or
    >>>several minutes to create.
    >>>This webpage calls a web service which in turn does a remoting call to a
    >>>windows service and the service creates the report.
    >>>
    >>>My question is if a user cancels or closes the browser before the report

    >> is
    >>>completed, but windows service is still in the process of creating a

    >> report
    >>>how do I notify the service to quit creating a report because there isn't
    >>>anyone to receive it?
    >>>
    >>>
    >>>
    >>>Thank You
    >>>
    >>>
    >>>
    >>>Peter
    >>>
    >>>
    >>>

    >>

    >
    >Thank you
    >
    >Sounds good ! - Well -- kind of, because this means a lot of work to get
    >this working correctly :)
    >
    >
    >
     
    Steven Cheng [MSFT], May 6, 2008
    #5
    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. bahoo
    Replies:
    2
    Views:
    365
    Dan Stromberg
    Sep 30, 2007
  2. Gunter Henriksen
    Replies:
    13
    Views:
    1,721
    Lawrence D'Oliveiro
    May 1, 2009
  3. Ryan

    notify when a process exits

    Ryan, Jul 28, 2011, in forum: Python
    Replies:
    0
    Views:
    177
  4. d c
    Replies:
    2
    Views:
    129
    Francis Cianfrocca
    Dec 24, 2007
  5. pat
    Replies:
    2
    Views:
    163
    Peter J. Holzer
    Oct 7, 2006
Loading...

Share This Page