Re: [PHP] Webpage Persistence Load balancing

2013-05-29 Thread Andrew Ballard
On May 29, 2013 8:04 AM, Al n...@ridersite.org wrote:

 I'm having a webpage Persistence problem, it is intermittent.  I suspect
it is caused by load-balancing.

 Specifically:

 Users are connected to a webpage form to complete.  Generally, everything
is OK if they take a minute or even more to complete the form. However,
sometimes they report to me, and I've seen it myself, the connection has
been dropped by the server in a short time.  They enter the data and Submit
it to the server, and the page just reloads and their data is lost.

 I have the PHP ignore_user_abort(true); etc.

 Is there anything I can do to fix this or is it a server issue that you
must fix?

 Thanks, Al.


Are you using sessions for persistence? If so, is your session storage in a
location that is shared between servers behind the load balancer? (Shared
network path, database, etc.)

Andrew


Re: [PHP] Webpage Persistence Load balancing

2013-05-29 Thread Daniel Brown
On Wed, May 29, 2013 at 8:03 AM, Al n...@ridersite.org wrote:
 I'm having a webpage Persistence problem, it is intermittent.  I suspect it
 is caused by load-balancing.

 Specifically:

 Users are connected to a webpage form to complete.  Generally, everything is
 OK if they take a minute or even more to complete the form. However,
 sometimes they report to me, and I've seen it myself, the connection has
 been dropped by the server in a short time.  They enter the data and Submit
 it to the server, and the page just reloads and their data is lost.

 I have the PHP ignore_user_abort(true); etc.

 Is there anything I can do to fix this or is it a server issue that you must
 fix?

Well, either way, it would be up to you to fix it.  We wouldn't
have anything to do with the server (well, unless you were hosted with
my company, but the PHP project itself isn't any way related to the
corporate stuff).  Of course, it could just be the ambiguity of the
term you in the sentence throwing me off here.

That said, is this a standard HTML page displayed in a normal,
modern-era browser, or is there a different frontend, such as Flash, a
mobile client, an API, or something of the sort?  And is the page
being timed-out with JavaScript, or simply timing out with the
sessions?

Lastly, if you suspect that it is the load-balancing, and the
balancer isn't capable of persistence itself (such as if you're using
round-robin), and sessions themselves are breaking, it's probably
because you're relying on file-based sessions, which do not (by
default) synchronize between servers.  Instead, you'll need to
centralize your sessions in a database, memcached, or similar option.

For some hints on session management and how you can manage it
across server clusters, check out the session_set_save_handler()
function[1].



^1: http://php.net/session_set_save_handler




--
/Daniel P. Brown
Network Infrastructure Manager
http://www.php.net/

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php