Re: [Proto-Scripty] Re: Progressive update messages from single request

2009-12-13 Thread Alex McAuley
Joe.

Certainly in winblows the output buffering may not work due to the modules 
and the way memory is managed in winblows differs to *nix.

I have tested it on CentOs, Debian, BSD, HP UNIX,Solaris and it works fine 
but not tested it on Wamp...


Alex Mcauley
http://www.thevacancymarket.com
- Original Message - 
From: "joe t." 
To: "Prototype & script.aculo.us" 
Sent: Sunday, December 13, 2009 12:49 AM
Subject: [Proto-Scripty] Re: Progressive update messages from single request


My crude-imentary tests are on my Win7 laptop using Wamp, which means
mod_deflate. Work server is Cent, but i don't know whether it's got
any compression modules enabled (i've tried with the admin, he
slacks).
-joe t.


On Dec 12, 4:17 am, "Alex McAuley" 
wrote:
> Joe.
>
> Are you using ob_gz_handler(); or mod_defalte / mod_gzip ?
>
> Also is it a winblows or *nix server
>
> Alex Mcauleyhttp://www.thevacancymarket.com
>
> - Original Message -
> From: "joe t." 
> To: "Prototype & script.aculo.us" 
> 
> Sent: Saturday, December 12, 2009 2:24 AM
> Subject: [Proto-Scripty] Re: Progressive update messages from single 
> request
>
> Alex,
> Thanks for the sample. i must be missing a piece somewhere 
> though...http://pastie.org/739926
>
> From that single Ajax.Request, the client delays, and after the PHP is
> done running, i get the complete output in one block. What i'd
> anticipated was that in each loop, the flush() would somehow send that
> output to the client where it could be used, then the next loop's
> flush would send another output to the client...
>
> If i'm understanding it, Ajax is a single-request-single-response. i
> can't output the current step a process is in as it happens. i can
> accumulate them, as your model shows, and dump that out as a log, of
> sorts. But in order to monitor progress of one request's processing on
> the server, a series of follow-ups have to get feedback which the
> original is providing on the side (as T.J. recommended).
>
> Unless i'm missing something, which would be great if you could help
> me fill that in. :)
> -joe t.
>
> On Dec 11, 3:29 am, "Alex McAuley" 
> wrote:
> > in your ajax request file
>
> >  > ini_set('output_buffering',0); // make sure the output_buffering 
> > directive
> > is not set high
> > ob_start(); // before anything is echoed to the screen
>
> > for($i=0;$i<10;$i++)
> > {
> > echo('Printing Line '.$i.'');
> > ob_flush();
> > flush();
>
> > sleep(1); // sleep for one second
>
> > }
>
> > ?>
> > this will output a line every second for 10 seconds
>
> > Hope this helps
>
> > P.S if you use ob_gz_handler this may not work (untested using it)
>
> > Alex Mcauleyhttp://www.thevacancymarket.com
>
> > - Original Message -
> > From: "joe t." 
> > To: "Prototype & script.aculo.us"
> > 
> > Sent: Friday, December 11, 2009 1:00 AM
> > Subject: [Proto-Scripty] Re: Progressive update messages from single
> > request
>
> > david:
> > The buffer/flush path seems to be where this solution is heading.
> > Don't ask me why, but iframes rub me the wrong way. With the evolving
> > needs for more streamlined connections, iframes feel like soggy
> > bandaids to me. Given they have a place where nothing else seems to
> > work (Ajax-ish file uploads), but i'd prefer to steer away from them
> > in this case if i can.
>
> > TJ:
> > That seems like a fairly solid idea. Same general concept of having a
> > second request object checking in on progress that the server reports
> > back, it just gets it from a relatively more reliable source (instead
> > of $_SESSION).
>
> > Alex:
> > Could you elaborate a bit, or point me to where i can follow up on
> > that? i'm intrigued, but i'm not deeply familiar with using the output
> > buffer effectively.
>
> > Thanks for the replies!
> > -joe t.
>
> > On Dec 10, 3:45 am, "Alex McAuley" 
> > wrote:
> > > I noticed you were using PHP on the server side ... you can also use
> > > output
> > > buffering to achieve this in one request
>
> > > Alex Mcauleyhttp://www.thevacancymarket.com
>
> > > - Original Message -
> > > From: "T.J. Crowder" 
> > > To: "Prototype & script.aculo.us"
> > > 
> > > Sent: Thursday, December 10, 2009 8:38 AM
> > > Subject: [Proto-Scripty] Re: Progressive update messages from single
> > > request
>
> > > Hi Joe,
>
> > > It seems to me the simple way to do this is have the first request
> > > initiate a process on the server that keeps running when the request
> > > completes; the request returns an indicator of the current status and
> > > an identifier for the action.
>
> > > Your subsequent requests supply the identifer, which allows the 
> > > server-
> > > side page to check the progress of the ongoing work matching that ID
> > > and report back the (new) status.
>
> > > People use things like this for showing progress bars for file uploads
> > > without using Flash, that kind of thing.
>
> > > HTH,
> > > --
> > > T.J. Crowder
> > > Independent Software Consultant
> > > tj / crowder software / com

Re: [Proto-Scripty] Re: Progressive update messages from single request

2009-12-12 Thread Alex McAuley
Joe.

Are you using ob_gz_handler(); or mod_defalte / mod_gzip ?

Also is  it a winblows or *nix server

Alex Mcauley
http://www.thevacancymarket.com
- Original Message - 
From: "joe t." 
To: "Prototype & script.aculo.us" 
Sent: Saturday, December 12, 2009 2:24 AM
Subject: [Proto-Scripty] Re: Progressive update messages from single request


Alex,
Thanks for the sample. i must be missing a piece somewhere though...
http://pastie.org/739926

>From that single Ajax.Request, the client delays, and after the PHP is
done running, i get the complete output in one block. What i'd
anticipated was that in each loop, the flush() would somehow send that
output to the client where it could be used, then the next loop's
flush would send another output to the client...

If i'm understanding it, Ajax is a single-request-single-response. i
can't output the current step a process is in as it happens. i can
accumulate them, as your model shows, and dump that out as a log, of
sorts. But in order to monitor progress of one request's processing on
the server, a series of follow-ups have to get feedback which the
original is providing on the side (as T.J. recommended).

Unless i'm missing something, which would be great if you could help
me fill that in. :)
-joe t.


On Dec 11, 3:29 am, "Alex McAuley" 
wrote:
> in your ajax request file
>
>  ini_set('output_buffering',0); // make sure the output_buffering directive
> is not set high
> ob_start(); // before anything is echoed to the screen
>
> for($i=0;$i<10;$i++)
> {
> echo('Printing Line '.$i.'');
> ob_flush();
> flush();
>
> sleep(1); // sleep for one second
>
> }
>
> ?>
> this will output a line every second for 10 seconds
>
> Hope this helps
>
> P.S if you use ob_gz_handler this may not work (untested using it)
>
> Alex Mcauleyhttp://www.thevacancymarket.com
>
> - Original Message -
> From: "joe t." 
> To: "Prototype & script.aculo.us" 
> 
> Sent: Friday, December 11, 2009 1:00 AM
> Subject: [Proto-Scripty] Re: Progressive update messages from single 
> request
>
> david:
> The buffer/flush path seems to be where this solution is heading.
> Don't ask me why, but iframes rub me the wrong way. With the evolving
> needs for more streamlined connections, iframes feel like soggy
> bandaids to me. Given they have a place where nothing else seems to
> work (Ajax-ish file uploads), but i'd prefer to steer away from them
> in this case if i can.
>
> TJ:
> That seems like a fairly solid idea. Same general concept of having a
> second request object checking in on progress that the server reports
> back, it just gets it from a relatively more reliable source (instead
> of $_SESSION).
>
> Alex:
> Could you elaborate a bit, or point me to where i can follow up on
> that? i'm intrigued, but i'm not deeply familiar with using the output
> buffer effectively.
>
> Thanks for the replies!
> -joe t.
>
> On Dec 10, 3:45 am, "Alex McAuley" 
> wrote:
> > I noticed you were using PHP on the server side ... you can also use
> > output
> > buffering to achieve this in one request
>
> > Alex Mcauleyhttp://www.thevacancymarket.com
>
> > - Original Message -
> > From: "T.J. Crowder" 
> > To: "Prototype & script.aculo.us"
> > 
> > Sent: Thursday, December 10, 2009 8:38 AM
> > Subject: [Proto-Scripty] Re: Progressive update messages from single
> > request
>
> > Hi Joe,
>
> > It seems to me the simple way to do this is have the first request
> > initiate a process on the server that keeps running when the request
> > completes; the request returns an indicator of the current status and
> > an identifier for the action.
>
> > Your subsequent requests supply the identifer, which allows the server-
> > side page to check the progress of the ongoing work matching that ID
> > and report back the (new) status.
>
> > People use things like this for showing progress bars for file uploads
> > without using Flash, that kind of thing.
>
> > HTH,
> > --
> > T.J. Crowder
> > Independent Software Consultant
> > tj / crowder software / comwww.crowdersoftware.com
>
> > On Dec 9, 4:11 pm, "joe t."  wrote:
> > > i think i've seen examples of this, but can't recall where, and could
> > > use some guidance.
>
> > > Obviously it's easy to handle a 1:1 Request/Response
>
> > > How can i do a true 1:many process? For instance:
> > > Client takes a single action which requires the server to perform 3
> > > tasks:
> > > * Query database
> > > * Generate PDF
> > > * Generate email, attach PDF, and send
>
> > > How can i respond to the client as EACH task is accomplished without
> > > ending the request chain?
> > > "Looking up your data . . ." (time-based dots as delay indicator)
> > > "Creating PDF . . ."
> > > "Email sent" (or failed, as the case may be)
>
> > > Is this done with HTTP 2xx headers? Recursive callbacks? If anyone can
> > > point me in the right direction (which include samples), i'd be
> > > grateful.
>
> > > Thanks.
> > > -joe t.
>
> > --
>
> > You received this message because you are s

Re: [Proto-Scripty] Re: Progressive update messages from single request

2009-12-11 Thread Alex McAuley
in your ajax request file

Printing Line '.$i.'');
ob_flush();
flush();

sleep(1); //  sleep for one second
}

?>
this will output a line every second for 10 seconds

Hope this helps

P.S if you use ob_gz_handler this may not work (untested using it)


Alex Mcauley
http://www.thevacancymarket.com


- Original Message - 
From: "joe t." 
To: "Prototype & script.aculo.us" 
Sent: Friday, December 11, 2009 1:00 AM
Subject: [Proto-Scripty] Re: Progressive update messages from single request


david:
The buffer/flush path seems to be where this solution is heading.
Don't ask me why, but iframes rub me the wrong way. With the evolving
needs for more streamlined connections, iframes feel like soggy
bandaids to me. Given they have a place where nothing else seems to
work (Ajax-ish file uploads), but i'd prefer to steer away from them
in this case if i can.

TJ:
That seems like a fairly solid idea. Same general concept of having a
second request object checking in on progress that the server reports
back, it just gets it from a relatively more reliable source (instead
of $_SESSION).

Alex:
Could you elaborate a bit, or point me to where i can follow up on
that? i'm intrigued, but i'm not deeply familiar with using the output
buffer effectively.

Thanks for the replies!
-joe t.


On Dec 10, 3:45 am, "Alex McAuley" 
wrote:
> I noticed you were using PHP on the server side ... you can also use 
> output
> buffering to achieve this in one request
>
> Alex Mcauleyhttp://www.thevacancymarket.com
>
> - Original Message -
> From: "T.J. Crowder" 
> To: "Prototype & script.aculo.us" 
> 
> Sent: Thursday, December 10, 2009 8:38 AM
> Subject: [Proto-Scripty] Re: Progressive update messages from single 
> request
>
> Hi Joe,
>
> It seems to me the simple way to do this is have the first request
> initiate a process on the server that keeps running when the request
> completes; the request returns an indicator of the current status and
> an identifier for the action.
>
> Your subsequent requests supply the identifer, which allows the server-
> side page to check the progress of the ongoing work matching that ID
> and report back the (new) status.
>
> People use things like this for showing progress bars for file uploads
> without using Flash, that kind of thing.
>
> HTH,
> --
> T.J. Crowder
> Independent Software Consultant
> tj / crowder software / comwww.crowdersoftware.com
>
> On Dec 9, 4:11 pm, "joe t."  wrote:
> > i think i've seen examples of this, but can't recall where, and could
> > use some guidance.
>
> > Obviously it's easy to handle a 1:1 Request/Response
>
> > How can i do a true 1:many process? For instance:
> > Client takes a single action which requires the server to perform 3
> > tasks:
> > * Query database
> > * Generate PDF
> > * Generate email, attach PDF, and send
>
> > How can i respond to the client as EACH task is accomplished without
> > ending the request chain?
> > "Looking up your data . . ." (time-based dots as delay indicator)
> > "Creating PDF . . ."
> > "Email sent" (or failed, as the case may be)
>
> > Is this done with HTTP 2xx headers? Recursive callbacks? If anyone can
> > point me in the right direction (which include samples), i'd be
> > grateful.
>
> > Thanks.
> > -joe t.
>
> --
>
> You received this message because you are subscribed to the Google Groups
> "Prototype & script.aculo.us" group.
> To post to this group, send email to
> prototype-scriptacul...@googlegroups.com.
> To unsubscribe from this group, send email to
> prototype-scriptaculous+unsubscr...@googlegroups.com.
> For more options, visit this group 
> athttp://groups.google.com/group/prototype-scriptaculous?hl=en.
>
>

--

You received this message because you are subscribed to the Google Groups 
"Prototype & script.aculo.us" group.
To post to this group, send email to 
prototype-scriptacul...@googlegroups.com.
To unsubscribe from this group, send email to 
prototype-scriptaculous+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/prototype-scriptaculous?hl=en.



--

You received this message because you are subscribed to the Google Groups 
"Prototype & script.aculo.us" group.
To post to this group, send email to prototype-scriptacul...@googlegroups.com.
To unsubscribe from this group, send email to 
prototype-scriptaculous+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/prototype-scriptaculous?hl=en.




Re: [Proto-Scripty] Re: Progressive update messages from single request

2009-12-10 Thread Alex McAuley
I noticed you were using PHP on the server side ... you can also use output 
buffering to achieve this in one request


Alex Mcauley
http://www.thevacancymarket.com
- Original Message - 
From: "T.J. Crowder" 
To: "Prototype & script.aculo.us" 
Sent: Thursday, December 10, 2009 8:38 AM
Subject: [Proto-Scripty] Re: Progressive update messages from single request


Hi Joe,

It seems to me the simple way to do this is have the first request
initiate a process on the server that keeps running when the request
completes; the request returns an indicator of the current status and
an identifier for the action.

Your subsequent requests supply the identifer, which allows the server-
side page to check the progress of the ongoing work matching that ID
and report back the (new) status.

People use things like this for showing progress bars for file uploads
without using Flash, that kind of thing.

HTH,
--
T.J. Crowder
Independent Software Consultant
tj / crowder software / com
www.crowdersoftware.com


On Dec 9, 4:11 pm, "joe t."  wrote:
> i think i've seen examples of this, but can't recall where, and could
> use some guidance.
>
> Obviously it's easy to handle a 1:1 Request/Response
>
> How can i do a true 1:many process? For instance:
> Client takes a single action which requires the server to perform 3
> tasks:
> * Query database
> * Generate PDF
> * Generate email, attach PDF, and send
>
> How can i respond to the client as EACH task is accomplished without
> ending the request chain?
> "Looking up your data . . ." (time-based dots as delay indicator)
> "Creating PDF . . ."
> "Email sent" (or failed, as the case may be)
>
> Is this done with HTTP 2xx headers? Recursive callbacks? If anyone can
> point me in the right direction (which include samples), i'd be
> grateful.
>
> Thanks.
> -joe t.

--

You received this message because you are subscribed to the Google Groups 
"Prototype & script.aculo.us" group.
To post to this group, send email to 
prototype-scriptacul...@googlegroups.com.
To unsubscribe from this group, send email to 
prototype-scriptaculous+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/prototype-scriptaculous?hl=en.



--

You received this message because you are subscribed to the Google Groups 
"Prototype & script.aculo.us" group.
To post to this group, send email to prototype-scriptacul...@googlegroups.com.
To unsubscribe from this group, send email to 
prototype-scriptaculous+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/prototype-scriptaculous?hl=en.