I'd like to see the db_status. If nothing else, it will let me calculate about how much we'd spend for MySQL connections via dreamhost.
Buffistas Building a Better Board
Do you have problems, concerns or recommendations about the technical side of the Phoenix? Air them here. Compliments also welcome.
Insent, Rob.
Also to Tom.
db_status tells us we do 6.84 MySQL connections per second. At that rate, we'd spend $2091.16 a month on extra conueries at Dreamhost.
See, I just don't see how that could be possible, with the number of members posting.
Am I nuts?
I can see it being true, since at the request of IH we put in explicit closes for each MySQL connection. Each page can open and close a number of connections. In my testing on my machine, I'd see four or five connections opened and closed per message center view.
I don't know what kind of tweaking went on while I was asleep, but I haven't had a single error message since I came back here around 2:45 a.m. EST.
and I spoke too soon--I did get a few errors. They are appearing less, though. But that could just be the low traffic at this time of night.
These are the facts as I understand them right now:
- We are regularly getting refused connections from the mysql server, saying that we have exceeded 'max_user_connections' for our account.
- According to the mysql server, the value of 'max_user_connections' is set to 100.
- According to the MySQL manual, when you get too many connection messages, you can use the SHOW PROCESSLIST query to see all of your connections. I have verified this using MySQL on my own system at home.
- When we connect to the mysql server and do a SHOW PROCESSLIST query, it shows that we only have one connection.
- When we connect to the mysql server via the command line, the web server is completely locked out. We also cannot make a second connection to the mysql server from the command line.
Therefore, I have come to the following conclusion.
- Either the mysql server is broken, and is only allowing us one concurrent connection at a time, instead of 100, or whatever number that we are allowed to have, or,
- The mysql server is broken, and is not reporting the correct information from the SHOW PROCESSLIST query.
The first scenario is much more likely. Further evidence supporting my hypothesis that the error occurs when more than one user hits the web server simultaneously can be found by examining a sample from the access_log and error_log files. Do we have access to them?
In either event, it is my opinion that the mysql server is broken. This is not something we "mention" to them as "feedback", this is something that the ISP needs to fix, or at the very least, provide us a better explanation, using data that we don't have access to.
This, of course, is purely a technical assessment. I have no knowledge of our interpersonal relationship with the ISP.
This is not something we "mention" to them as "feedback", this is something that the ISP needs to fix, or at the very least, provide us a better explanation, using data that we don't have access to.
Unfortunately, according to Kristen, they've had it with us.
I checked the error log files, and there are four connection_refuseds -- for each db_status I ran during the fifteen minutes down. The access_log isn't behaving for me right now, so I'll grab it from work.
Unfortunately, according to Kristen, they've had it with us.
Huh. I don't see us as being particularly difficult customers. Does the Phoenix really take up that much more space or whatever than other sites?