[FX.php List] Server is busy...please try again
Tim 'Webko' Booth
tim at nicheit.com.au
Mon Nov 8 17:47:25 MST 2010
Dear Jonathan;
> Hi folks.
>
> "Server is busy...please try again".
>
> You might see this message on a sophisticated airlines reservation
> web site, but not if a Filemaker web server is too busy or has a
> problem. The browser just times out. This can be a real problem if
> a multi-step operation fails to finish before the time out.
>
> I need to install a fix for this eventuality for one client. My plan
> is to set a flag in an existing customer record before starting the
> operation and then resetting the flag upon completion. Any flags
> that remain set indicate a potential problem. This is possible when
> you are editing an existing record. I am going to do that straight
> away.
>
> NOTE: We have learned (the hard way) that the answer is *not* to
> increase the browser expiration time. When there is a web server
> problem, the last thing you want to do is stack up queries that
> don't expire. This *will* crash the web server if it hasn't already
> done so.
>
> But back to the "Server is busy...please try again" option....
>
> Would this involve having one server talking to a second server
> where the first server can return the friendly message before the
> browser times out? Or, is this a job for javascript? Has anyone
> done this before? I'm sure that it is commonplace in many
> industries, but is not in my bag of tricks yet.
The problem is that XML engine is single-threaded, as far as I know.
On a multi-connection database (like mySQL) you can check how many
connections, and then redirect to a Busy page if it's over a certain
number [1]...
When there is only one connection, then a long request will clog it
for all the requests after as well.
I can't think of a way to test easily without being part of the issue,
as it would then be another request, stuck behind the long-running
one... Happy to see if anyone else has an idea about accomplishing this.
Cheers
Webko
[1] the main reason our heaviest use systems are hybrid FM/mySQL, so
we can do something with excess requests - and mySQL can handle a
*lot* more requests in a given time period.
More information about the FX.php_List
mailing list