Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Perl > Perl Misc > Intermediate Page w/ CGI Script

Reply
Thread Tools

Intermediate Page w/ CGI Script

 
 
Pete Butler
Guest
Posts: n/a
 
      09-18-2003
I'm working on a CGI application using Perl. My client would like the
user to get some sort of "processing request" page immediately upon
clicking "Submit", because right now, he occasionally sees a delay
between clicking "Submit" and getting the results page. Is there a
good way to do this with CGI?

The options I've been able to think of all have serious problems.
Giving the user an immediate "thank you" page then processing the data
behind the scenes (as a seperate thread? as a scheduled task?) sucks
because the page the user gets is dependant upon the information
passed in. (Certain data gets a "sorry, not interested" page.)

I thought of making a CGI script that makes a quick-n-dirty "Thank
you!" page that has all the data submitted by the user in hidden form
elements which then submits itself, but that depends on the user
having Javascript enabled, AND would require at least a moderately
sophisticated script to power it, since the data set coming back from
the user will be dynamic based on a few configurable items.

And, of course, both options above require me to fire off a CGI script
in the first place. Since I suspect that the performance issues
driving my client's request are caused by starting CGI scripts when
the server is under load, I suspect we'd go from this scenario:

-Press Submit
-Wait wait wait
-See results page

To this one:

-Press Submit
-Wait wait wait
-See "please wait" page
-Wait wait wait
-See results page

Is there a solution here I'm overlooking? (Short of using mod_perl or
fastcgi to improve performance, which aren't available to me. Or
switching to PHP; it's too late in the game for me to re-write
everything from the ground up.)

Or am I going to have to stick to my guns and insist that it's just a
part of the whole CGI experience, and that the client needs to live
with it?

(And for those of you who like a little garnish of irony, I've been
unable to replicate the performance problems my client is complaining
about in the first place.)

Thanks for your help,
-- Pete Butler
 
Reply With Quote
 
 
 
 
A. Sinan Unur
Guest
Posts: n/a
 
      09-18-2003
http://www.velocityreviews.com/forums/(E-Mail Removed) (Pete Butler) wrote in
news:(E-Mail Removed) :

> I'm working on a CGI application using Perl. My client would like the
> user to get some sort of "processing request" page immediately upon
> clicking "Submit", because right now, he occasionally sees a delay
> between clicking "Submit" and getting the results page. Is there a
> good way to do this with CGI?


http://www.stonehenge.com/merlyn/Web...ues/col20.html

> Or am I going to have to stick to my guns and insist that it's just a
> part of the whole CGI experience, and that the client needs to live
> with it?


Personally, I would then never do business with you again.

> (And for those of you who like a little garnish of irony, I've been
> unable to replicate the performance problems my client is complaining
> about in the first place.)


That does not mean anything.

Sinan.

--
A. Sinan Unur
(E-Mail Removed)
Remove dashes for address
Spam bait: (E-Mail Removed)
 
Reply With Quote
 
 
 
 
Glenn Jackman
Guest
Posts: n/a
 
      09-18-2003
Pete Butler <(E-Mail Removed)> wrote:
> I'm working on a CGI application using Perl. My client would like the
> user to get some sort of "processing request" page immediately upon
> clicking "Submit", because right now, he occasionally sees a delay
> between clicking "Submit" and getting the results page. Is there a
> good way to do this with CGI?


If your web server supports it, use a non-parsed headers script
http://www.linux.psu.ru/pub/texts/eb...gi/ch03_08.htm
Then, html will be displayed as the server serves it.

--
Glenn Jackman
NCF Sysadmin
(E-Mail Removed)
 
Reply With Quote
 
A. Sinan Unur
Guest
Posts: n/a
 
      09-18-2003
Jim Gibson <(E-Mail Removed)> wrote in
news:180920031129560958%(E-Mail Removed):

> In article <Xns93FA77767D91Basu1cornelledu@132.236.56.8>, A. Sinan
> Unur <(E-Mail Removed)> wrote:
>
>> (E-Mail Removed) (Pete Butler) wrote in
>> news:(E-Mail Removed) :
>>
>> > I'm working on a CGI application using Perl. My client would like
>> > the user to get some sort of "processing request" page immediately
>> > upon clicking "Submit", because right now, he occasionally sees a
>> > delay between clicking "Submit" and getting the results page. Is
>> > there a good way to do this with CGI?

>>
>> http://www.stonehenge.com/merlyn/Web...ues/col20.html

>
> Randal provided another version in the Aug 2002 issue of Linux
> Magazine, available here:
>
> http://www.stonehenge.com/merlyn/LinuxMag/col39.html


I had the other one bookmarked. Thank you for pointing that out.

Sinan.

--
A. Sinan Unur
(E-Mail Removed)
Remove dashes for address
Spam bait: (E-Mail Removed)
 
Reply With Quote
 
Alan J. Flavell
Guest
Posts: n/a
 
      09-19-2003
On Thu, 18 Sep 2003, Glenn Jackman wrote:

> If your web server supports it, use a non-parsed headers script


If this was a web servers configuration or CGI group, I would tell you
that Apache doesn't demand the complication of using NPH scripts in
order to support incremental output.

But as it isn't, I suppose I'd better not :-}

--

(apologies if yesterday's attempt to post this does finally show up)
 
Reply With Quote
 
Alan J. Flavell
Guest
Posts: n/a
 
      09-19-2003
On Thu, 18 Sep 2003, Pete Butler wrote:

> I'm working on a CGI application using Perl. My client would like the
> user to get some sort of "processing request" page immediately upon
> clicking "Submit", because right now, he occasionally sees a delay
> between clicking "Submit" and getting the results page. Is there a
> good way to do this with CGI?


No different in Perl than in any other CGI programming language, and
a requirement typically addressed in CGI FAQs and discussed on CGI
programming group(s). What did you think of the previously-discussed
solutions that you found while researching the topic prior to deciding
to post a question? [hint!]

> And, of course, both options above require me to fire off a CGI script
> in the first place. Since I suspect that the performance issues
> driving my client's request are caused by starting CGI scripts when
> the server is under load,


You haven't told us whether the wait is typically 5 seconds or 5
minutes or what. Different solutions might be applicable.

> I suspect we'd go from this scenario:
>
> -Press Submit
> -Wait wait wait
> -See results page
>
> To this one:
>
> -Press Submit
> -Wait wait wait
> -See "please wait" page
> -Wait wait wait
> -See results page


Yup, that's very perceptive. The startup overhead might be a
significant part of the whole processing (you haven't told us enough
to be sure).

> Is there a solution here I'm overlooking?


Researching FAQs and previous discussions? :-{

> (Short of using mod_perl or fastcgi to improve performance, which
> aren't available to me. Or switching to PHP; it's too late in the
> game for me to re-write everything from the ground up.)


Sometimes, when you rule out all the applicable technical solutions,
you are left with the original problem - as we can see.

<announcement mode=public-service>
In case you hadn't noticed, CGI questions aren't generally welcomed
here (c.l.p.misc) unless they have some specifically Perl content -
and that's irrespective of whether you're programming them _in_ Perl.
perlfaq9 has further pointers.
</>

cheers
 
Reply With Quote
 
Pete Butler
Guest
Posts: n/a
 
      09-20-2003
.. . . and, of course, my sincere thanks to everyone who helped despite
the marginal topicality of my question.

-- Pete Butler
 
Reply With Quote
 
Randal L. Schwartz
Guest
Posts: n/a
 
      09-21-2003
>>>>> "Pete" == Pete Butler <(E-Mail Removed)> writes:

Pete> I'm working on a CGI application using Perl. My client would like the
Pete> user to get some sort of "processing request" page immediately upon
Pete> clicking "Submit", because right now, he occasionally sees a delay
Pete> between clicking "Submit" and getting the results page. Is there a
Pete> good way to do this with CGI?

I've done this in a couple of different ways...

<http://www.stonehenge.com/merlyn/WebTechniques/col20.html>
<http://www.stonehenge.com/merlyn/LinuxMag/col39.html>

print "Just another Perl hacker," # and web whacker...
--
Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095
<(E-Mail Removed)> <URL:http://www.stonehenge.com/merlyn/>
Perl/Unix/security consulting, Technical writing, Comedy, etc. etc.
See PerlTraining.Stonehenge.com for onsite and open-enrollment Perl training!
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
LWP user agent grabs the intermediate wait page after POST intead ofthe actual result page bhabs Perl Misc 2 02-13-2008 01:55 AM
what's wrong calling a Perl/CGI script in Perl/CGI script under Tomcat server? kath Perl Misc 4 04-09-2007 09:21 PM
Python-cgi or Perl-cgi script doubt praba kar Python 1 07-30-2005 08:25 AM
A serious question about cgi (intermediate-newbie) Robin Perl Misc 6 04-17-2004 10:36 AM



Advertisments