Thursday, January 31, 2008

Queue up an epiphany

So, I've been struggling with how I was going to implement the queuing system for rovlabs but here is what I'm thinking.

My idea is to create a cookie/session for everyone who enters the queue. When a user enters the queue they will get a pop-up "control box" that references the navigation page (a .php page). That page will process the ajax request and compare the users session ID with that of a list that will be stored in the database. Once the users session number matches that of who should be on active it will produce the navigation controls and notify the user that they are in control of the ROV.

Each directional change will cause a double-check of the users status and time left. Epoch time will be used to keep track of how long someone has been operating the ROV. If time runs out, then their next direction command will trigger a redirect back to a "thank you" page that asks for feedback before closing. A user can re-enter the queue at any time.

I am a little worried about the potential number of requests coming into the server. I might have to limit the queue itself, but it shouldn't show up as an issue unless the queue has a few hundred requests per second.

I will post a flow-chart asap.

No comments: