restore chatroomread.php performance hacks

justinrandell - December 24, 2008 - 03:33
Project:Chat Room
Version:6.x-2.x-dev
Component:Code
Category:task
Priority:normal
Assigned:justinrandell
Status:closed
Description

the current D6 beta's don't use chatroomread.php for the frequent polling requests.

this makes the chatroom module a server eating bit of code.

this issue will track restoring this code path for the simple poll operations while trying to keep as much of the new D6 goodness of the port.

#1

justinrandell - September 13, 2009 - 16:14

just a note to say i'll be back on this. plan to release an at least vaguely working module with the server-eating code intact, then start a fresh branch to restore the performance code so the module can be used for moderately sized rooms again.

#2

justinrandell - September 13, 2009 - 16:29
Version:6.x-1.1-beta1» 6.x-2.x-dev

i've now created a new dev branch for this work.

#3

adam_b - September 14, 2009 - 09:33

What counts as a "moderately sized room"? If I'm using the existing 6.x-1.0 version with the "server-eating code", how many users is a reasonable number? and what's likely to happen if I go over that number?

#4

justinrandell - September 14, 2009 - 10:48

well, it all depends on the hardware and setup you have for your site. i would say that 100 people in chats across a site would be 'medium' sized - there are lots of sites with more than a hundred active users. so this means:

- each chat that is open in someone's browser typically pings the server once every second, so if you have 100 people chatting across several rooms, you're getting 100 requests a second just for the polling
- right now, every single poll request does a full drupal bootstrap, even though a very large number of those requests won't actually get anything new back from the server

how much is too much depends on what your hardware can handle, but for the vast bulk of sites, 100 requests a second is a significant load increase, but 100 active users is not so rare.

if we have the poll requests hit a dedicated script, we can serve the requests for which nothing has changed much, much quicker. its a hack, but a hack with a clear performance win.

#5

justinrandell - October 28, 2009 - 10:37
Status:active» fixed

this is done.

#6

System Message - November 11, 2009 - 10:40
Status:fixed» closed

Automatically closed -- issue fixed for 2 weeks with no activity.

 
 

Drupal is a registered trademark of Dries Buytaert.