Welcome to the Question2Answer Q&A. There's also a demo if you just want to try it out.
+2 votes
925 views
in Q2A Core by

 

 

My site was unavailable for two hours.
I could not get in or on the server.
Now the site is available again.
But sometimes this message appears.

 

Please if you have any information, answer this question or send me a private message.

 

error_log in comments

 

Q2A version: 1.7
by
[Tue Feb 02 01:30:48 2016] [error] [client 117.135.250.138] PHP Question2Answer MySQL query error 2006: MySQL server has gone away - Query: (SELECT '0' AS selectkey, qa_posts.postid, qa_posts.categoryid, qa_posts.type, LEFT(qa_posts.type, 1) AS basetype, INSTR(qa_posts.type, '_HIDDEN')>0 AS hidden, qa_posts.acount, qa_posts.selchildid, qa_posts.closedbyid, qa_posts.upvotes, qa_posts.downvotes, qa_posts.netvotes, qa_posts.views, qa_posts.hotness, qa_posts.flagcount, qa_posts.title, qa_posts.tags, UNIX_TIMESTAMP(qa_posts.created) AS created, qa_posts.name, qa_categories.title AS categoryname, qa_categories.backpath AS categorybackpath, CONCAT_WS(',', qa_posts.catidpath1, qa_posts.catidpath2, qa_posts.catidpath3, qa_posts.categoryid) AS categoryids, qa_posts.userid, qa_posts.cookieid, INET_NTOA(qa_posts.createip) AS createip, qa_userpoints.points, qa_users.flags, qa_users.level, qa_users.email AS email, qa_users.handle AS handle, BINARY qa_users.avatarblobid AS avatarblobid, qa_users.avatarwidth, qa_users.avatarheight, NULL AS obasetype, NULL AS ohidden, NULL AS opostid, NULL AS ouserid, NULL AS ocookieid, NULL AS oname, NULL AS oip, NULL AS otime, NULL AS oflagcount, NULL AS oflags, NULL AS olevel, NULL AS oemail, NULL AS ohandle, NULL AS oavatarblobid, NULL AS oavatarwidth, NULL AS oavatarheight, NULL AS opoints, NULL AS parentid, NULL AS qcount, NULL AS position, NULL AS childcount, NULL AS content, NULL AS backpath, NULL AS action, NULL AS period, NULL AS count, NULL AS pageid, NULL AS permit, NULL AS nav, NULL AS heading, NULL AS widgetid, NULL AS place FROM qa_posts LEFT JOIN qa_categories ON qa_categories.categoryid=qa_posts.categoryid LEFT JOIN qa_users ON qa_posts.userid=qa_users.userid LEFT JOIN qa_userpoints ON qa_posts.userid=qa_userpoints.userid JOIN (SELECT postid FROM qa_posts WHERE type='Q' ORDER BY qa_posts.created DESC LIMIT 0,20) y ON qa_posts.postid=y.postid) UNION ALL (SELECT '1', qa_posts.postid, qa_posts.categoryid, qa_posts.type, LEFT(qa_posts.type, 1), INSTR(qa_posts.type, '_HIDDEN')>0, qa_posts.acount, qa_posts.selchildid, qa_posts.closedbyid, qa_posts.upvotes, qa_posts.downvotes, qa_posts.netvotes, qa_posts.views, qa_posts.hotness, qa_posts.flagcount, qa_posts.title, qa_posts.tags, UNIX_TIMESTAMP(qa_posts.created), qa_posts.name, qa_categories.title, qa_categories.backpath, CONCAT_WS(',', qa_posts.catidpath1, qa_posts.catidpath2, qa_posts.catidpath3, qa_posts.categoryid), qa_posts.userid, qa_posts.cookieid, INET_NTOA(qa_posts.createip), qa_userpoints.points, qa_users.flags, qa_users.level, qa_users.email, qa_users.handle, BINARY qa_users.avatarblobid, qa_users.avatarwidth, qa_users.avatarheight, LEFT(aposts.type, 1), INSTR(aposts.type, '_HIDDEN')>0, aposts.postid, aposts.userid, aposts.cookieid, aposts.name, INET_NTOA(aposts.createip), UNIX_TIMESTAMP(aposts.created), aposts.flagcount, ausers.flags, ausers.level, ausers.email, ausers.handle, BINARY ausers.avatarblobid, ausers.avatarwidth, ausers.avatarheight, auserpoints.points, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL FROM qa_posts LEFT JOIN qa_categories ON qa_categories.categoryid=qa_posts.categoryid LEFT JOIN qa_users ON qa_posts.userid=qa_users.userid LEFT JOIN qa_userpoints ON qa_posts.userid=qa_userpoints.userid JOIN qa_posts AS aposts ON qa_posts.postid=aposts.parentid LEFT JOIN qa_users AS ausers ON aposts.userid=ausers.userid LEFT JOIN qa_userpoints AS auserpoints ON aposts.userid=auserpoints.userid JOIN (SELECT postid FROM qa_posts WHERE type='A' ORDER BY qa_posts.created DESC LIMIT 0,50) y ON aposts.postid=y.postid WHERE qa_posts.type='Q') UNION ALL (SELECT '2', NULL, qa_categories.categoryid, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, qa_categories.title, qa_categories.tags, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, qa_categories.parentid, qa_categories.qcount, qa_categories.position, COUNT(child.categoryid), qa_categories.content, qa_categories.backpath, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL FROM qa_categories JOIN (SELECT NULL AS parentkey UNION SELECT grandparent.parentid FROM qa_categories JOIN qa_categories AS parent ON qa_categories.parentid=parent.categoryid JOIN qa_categories AS grandparent ON parent.parentid=grandparent.categoryid WHERE qa_categories.backpath='' UNION SELECT parent.parentid FROM qa_categories JOIN qa_categories AS parent ON qa_categories.parentid=parent.categoryid WHERE qa_categories.backpath='' UNION SELECT parentid FROM qa_categories WHERE backpath='' UNION SELECT categoryid FROM qa_categories WHERE backpath='') y ON qa_categories.parentid<=>parentkey LEFT JOIN qa_categories AS child ON child.parentid=qa_categories.categoryid GROUP BY qa_categories.categoryid ORDER BY qa_categories.position) UNION ALL (SELECT 'pending_iplimits', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, action, period, count, NULL, NULL, NULL, NULL, NULL, NULL FROM qa_iplimits WHERE ip=COALESCE(INET_ATON('117.135.250.138'), 0)) UNION ALL (SELECT 'pending_navpages', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, title, tags, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, flags, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, position, NULL, NULL, NULL, NULL, NULL, NULL, pageid, permit+0, nav, heading, NULL, NULL FROM qa_pages WHERE nav IN ('B','M','O','F') ORDER BY position) UNION ALL (SELECT 'pending_widgets', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, title, tags, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, position, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, widgetid, place FROM qa_widgets ORDER BY position)
[Tue Feb 02 01:30:48 2016] [error] [client 117.135.250.138] PHP Question2Answer MySQL query error 2006: MySQL server has gone away - Query: UNLOCK TABLES
[Tue Feb 02 01:30:48 2016] [error] [client 187.19.126.248] PHP Warning:  mysqli::mysqli(): (HY000/2002): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) in /var/www/vhosts/spaceamigos.com/httpdocs/qa-include/qa-db.php on line 66, referer: http://spaceamigos.com/user/Allef
[Tue Feb 02 01:30:48 2016] [error] [client 187.19.126.248] PHP Question2Answer MySQL connect error 2002: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2), referer: http://spaceamigos.com/user/Allef
[Tue Feb 02 01:30:48 2016] [error] [client 179.86.50.108] PHP Warning:  mysqli::mysqli(): (HY000/2002): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) in /var/www/vhosts/spaceamigos.com/httpdocs/qa-include/qa-db.php on line 66
[Tue Feb 02 01:30:48 2016] [error] [client 179.86.50.108] PHP Question2Answer MySQL connect error 2002: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

1 Answer

+1 vote
by
selected by
 
Best answer

The errors say that the MySQL server stopped working or crashed. I don't think this is due to Q2A itself, it could be due to high server load. If you're on shared hosting you may need to upgrade. Or it could be the result of another site on the same server.

You should check with your host to see if they can see where the problem is. This might also help: http://dev.mysql.com/doc/refman/5.7/en/gone-away.html

Edit: assuming spaceamigos.com is your site, you have a very long load time for pages, but only for the PHP side. ie static files are being served OK. You should try disabling some plugins and check if one of those is causing high load on your server.

Edit2: some more things to try.

Set the config option QA_OPTIMIZE_LOCAL_DB to true, and QA_OPTIMIZE_DISTANT_DB to false. This will run several smaller queries instead of one big one, which should be more efficient, assuming MySQL is on the same server.

Set QA_ALLOW_UNINDEXED_QUERIES to false.

You could also try some of the new performance enhancements that will be added in v1.8. In qa-base.php, replace the function qa_to_override with this:

    function qa_to_override($function)
    {
        global $qa_overrides, $qa_direct;

        // handle most common case first
        if (!isset($qa_overrides[$function])) {
            return null;
        }

        if (strpos($function, '_override_')!==false) {
            qa_fatal_error('Override functions should not be calling qa_to_override()!');
        }

        if (@$qa_direct[$function]) {
            unset($qa_direct[$function]); // bypass the override just this once
            return null;
        }

        return $qa_overrides[$function];
    }

In app/users.php, replace qa_session_var_suffix with this:

        function qa_session_var_suffix()
        {
            if (qa_to_override(__FUNCTION__)) { $args=func_get_args(); return qa_call_override(__FUNCTION__, $args); }

            global $qa_session_suffix;

            if (!$qa_session_suffix) {
                $prefix=defined('QA_MYSQL_USERS_PREFIX') ? QA_MYSQL_USERS_PREFIX : QA_MYSQL_TABLE_PREFIX;
                $qa_session_suffix = md5(QA_FINAL_MYSQL_HOSTNAME.'/'.QA_FINAL_MYSQL_USERNAME.'/'.QA_FINAL_MYSQL_PASSWORD.'/'.QA_FINAL_MYSQL_DATABASE.'/'.$prefix);
            }

            return $qa_session_suffix;
        }

Those are the two biggest performance increases.

 

by
Thank you for answer, Scott.

I have a VPS L in Contabo: https://contabo.com/?show=vps

The company told me that the CPU usage is too high.
At the beginning my website was not slow and I had the same plugins.

Plugins:
Q2A Badges
On site notifications
Breadcrumbs
Social Share
Widget Anywhere Plugin
Featured Questions
Follow Users Widget
My Follower Page
My Followers Widget
Category Followers Widget
Question Followers Widget
Edit History
FAQ Page
by
Try removing each plugin in turn to see if your site speeds up.

You could also turn on the debug mode temporarily (preferably on localhost, not the live site) and see if any of the queries for the pages are notably slow.

Also do you have a lot of blocked IPs? That will slow down Q2A 1.7 in some cases (but has been fixed for 1.8).
by
I do not have IPs block.

I removed:
Q2A Badges
Q2A Breadcrumbs
Q2A Social Share

For now, the site is with good speed.
If there is news, I will comment again.

Thanks, Scott!
by
Scott, the problem keeps happening.
I uninstalled and tested the site without the plugins that I use. And the speed remains the same.
The site is unavailable and I need to restart my VPS for him to return.
You can help?
by
[Sun Feb 07 20:06:51 2016] [error] [client 187.74.181.247] PHP Question2Answer MySQL query error 2006: MySQL server has gone away - Query: UNLOCK TABLES, referer: http://spaceamigos.com/perguntas
[Sun Feb 07 20:06:51 2016] [error] [client 8.37.232.19] PHP Question2Answer MySQL query error 2006: MySQL server has gone away - Query: (SELECT '0' AS selectkey, qa_posts.postid, qa_posts.categoryid, qa_posts.type, LEFT(qa_posts.type, 1) AS basetype, INSTR(qa_posts.type, '_HIDDEN')>0 AS hidden, qa_posts.acount, qa_posts.selchildid, qa_posts.closedbyid, qa_posts.upvotes, qa_posts.downvotes, qa_posts.netvotes, qa_posts.views, qa_posts.hotness, qa_posts.flagcount, qa_posts.title, qa_posts.tags, UNIX_TIMESTAMP(qa_posts.created) AS created, qa_posts.name, qa_categories.title AS categoryname, qa_categories.backpath AS categorybackpath, CONCAT_WS(',', qa_posts.catidpath1, qa_posts.catidpath2, qa_posts.catidpath3, qa_posts.categoryid) AS categoryids, qa_uservotes.vote AS uservote, qa_uservotes.flag AS userflag, qa_userfavorites.entityid<=>qa_posts.postid AS userfavoriteq, qa_posts.content AS content, qa_posts.notify AS notify, UNIX_TIMESTAMP(qa_posts.updated) AS updated, qa_posts.updatetype AS updatetype, qa_posts.format, qa_posts.lastuserid, INET_NTOA(qa_posts.lastip) AS lastip, qa_posts.parentid, INET_NTOA(qa_posts.lastviewip) AS lastviewip, qa_posts.userid, qa_posts.cookieid, INET_NTOA(qa_posts.createip) AS createip, qa_userpoints.points, qa_users.flags, qa_users.level, qa_users.email AS email, qa_users.handle AS handle, BINARY qa_users.avatarblobid AS avatarblobid, qa_users.avatarwidth, qa_users.avatarheight, lastusers.handle AS lasthandle, NULL AS qcount, NULL AS position, NULL AS childcount, NULL AS backpath, NULL AS passsalt, NULL AS passcheck, NULL AS emailcode, NULL AS sessioncode, NULL AS sessionsource, NULL AS loggedin, NULL AS loginip, NULL AS written, NULL AS writeip, NULL AS wallposts, NULL AS noticeid, NULL AS action, NULL AS period, NULL AS count, NULL AS entityid, NULL AS entitytype, NULL AS pageid, NULL AS permit, NULL AS nav, NULL AS heading, NULL AS widgetid, NULL AS place FROM qa_posts LEFT JOIN qa_categories ON qa_categories.categoryid=qa_posts.categoryid LEFT JOIN qa_uservotes ON qa_posts.postid=qa_uservotes.postid AND qa_uservotes.userid='842' LEFT JOIN qa_userfavorites ON qa_posts.postid=qa_userfavorites.entityid AND qa_userfavorites.userid='842' AND qa_userfavorites.entitytype='Q' LEFT JOIN qa_users ON qa_posts.userid=qa_users.userid LEFT JOIN qa_users AS lastusers ON qa_posts.lastuserid=lastusers.userid LEFT JOIN qa_userpoints ON qa_posts.userid=qa_userpoints.userid WHERE qa_posts.postid=718245) UNION ALL (SELECT '1', qa_posts.postid, qa_posts.categoryid, qa_posts.type, LEFT(qa_posts.type, 1), INSTR(qa_posts.type, '_HIDDEN')>0, qa_posts.acount, qa_posts.selchildid, qa_posts.closedbyid, qa_posts.upvotes, qa_posts.downvotes, qa_posts.netvotes, qa_posts.views, qa_posts.hotness, qa_posts.flagcount, qa_posts.title, qa_posts.tags, UNIX_TIMESTAMP(qa_posts.created), qa_posts.name, qa_categories.title, qa_categories.backpath, CONCAT_WS(',', qa_posts.catidpath1, qa_posts.catidpath2, qa_posts.catidpath3, qa_posts.categoryid), qa_uservotes.vote, qa_uservotes.flag, qa_userfavorites.entityid<=>qa_posts.postid, qa_posts.content, qa_posts.notify, UNIX_TIMESTAMP(qa_posts.updated), qa_posts.updatetype, qa_posts.format, qa_posts.lastuserid, INET_NTOA(qa_posts.lastip), qa_posts.parentid, INET_NTOA(qa_posts.lastviewip), qa_posts.userid, qa_posts.cookieid, INET_NTOA(qa_posts.createip), qa_userpoints.points, qa_users.flags, qa_users.level, qa_users.email, qa_users.handle, BINARY qa_users.avatarblobid, qa_users.avatarwidth, qa_users.avatarheight, lastusers.handle, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL FROM qa_posts LEFT JOIN qa_categories ON qa_categories.categoryid=qa_posts.categoryid LEFT JOIN qa_uservotes ON qa_posts.postid=qa_uservotes.postid AND qa_uservotes.userid='842' LEFT JOIN qa_userfavorites ON qa_posts.postid=qa_userfavorites.entityid AND qa_userfavorites.userid='842' AND qa_userfavorites.entitytype='Q' LEFT JOIN qa_users ON qa_posts.userid=qa_users.userid LEFT JOIN qa_users AS lastusers ON qa_posts.lastuserid=lastusers.userid LEFT JOIN qa_userpoints ON qa_posts.userid=qa_userpoints.userid WHERE qa_posts.parentid=718245) UNION ALL (SELECT '2', qa_posts.postid, qa_posts.categoryid, qa_posts.type, LEFT(qa_posts.type, 1), INSTR(qa_posts.type, '_HIDDEN')>0, qa_posts.acount, qa_posts.selchildid, qa_posts.closedbyid, qa_posts.upvotes, qa_posts.downvotes, qa_posts.netvotes, qa_posts.views, qa_posts.hotness, qa_posts.flagcount, qa_posts.title, qa_posts.tags, UNIX_TIMESTAMP(qa_posts.created), qa_posts.name, qa_categories.title, qa_categories.backpath, CONCAT_WS(',', qa_posts.catidpath1, qa_posts.catidpath2, qa_posts.catidpath3, qa_posts.categoryid), qa_uservotes.vote, qa_uservotes.flag, qa_userfavorites.entityid<=>qa_posts.postid, qa_posts.content, qa_posts.notify, UNIX_TIMESTAMP(qa_posts.updated), qa_posts.updatetype, qa_posts.format, qa_posts.lastuserid, INET_NTOA(qa_posts.lastip), qa_posts.parentid, INET_NTOA(qa_posts.lastviewip), qa_posts.userid, qa_posts.cookieid, INET_NTOA(qa_posts.createip), qa_userpoints.points, qa_users.flags, qa_users.level, qa_users.email, qa_users.handle, BINARY qa_users.avatarblobid, qa_users.avatarwidth, qa_users.avatarheight, lastusers.handle, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL FROM qa_posts LEFT JOIN qa_categories ON qa_categories.categoryid=qa_posts.categoryid LEFT JOIN qa_uservotes ON qa_posts.postid=qa_uservotes.postid AND qa_uservotes.userid='842' LEFT JOIN qa_userfavorites ON qa_posts.postid=qa_userfavorites.entityid AND qa_userfavorites.userid='842' AND qa_userfavorites.entitytype='Q' LEFT JOIN qa_users ON qa_posts.userid=qa_users.userid LEFT JOIN qa_users AS lastusers ON qa_posts.lastuserid=lastusers.userid LEFT JOIN qa_userpoints ON qa_posts.userid=qa_userpoints.userid JOIN qa_posts AS parents ON qa_posts.parentid=parents.postid WHERE parents.parentid=718245 AND LEFT(parents.type, 1)='A') UNION ALL (SELECT '3', qa_posts.postid, qa_posts.categoryid, qa_posts.type, LEFT(qa_posts.type,
by
1), INSTR(qa_posts.type, '_HIDDEN')>0, qa_posts.acount, qa_posts.selchildid, qa_posts.closedbyid, qa_posts.upvotes, qa_posts.downvotes, qa_posts.netvotes, qa_posts.views, qa_posts.hotness, qa_posts.flagcount, qa_posts.title, qa_posts.tags, UNIX_TIMESTAMP(qa_posts.created), qa_posts.name, qa_categories.title, qa_categories.backpath, CONCAT_WS(',', qa_posts.catidpath1, qa_posts.catidpath2, qa_posts.catidpath3, qa_posts.categoryid), NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, qa_posts.userid, qa_posts.cookieid, INET_NTOA(qa_posts.createip), qa_userpoints.points, qa_users.flags, qa_users.level, qa_users.email, qa_users.handle, BINARY qa_users.avatarblobid, qa_users.avatarwidth, qa_users.avatarheight, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL FROM qa_posts LEFT JOIN qa_categories ON qa_categories.categoryid=qa_posts.categoryid LEFT JOIN qa_users ON qa_posts.userid=qa_users.userid LEFT JOIN qa_userpoints ON qa_posts.userid=qa_userpoints.userid WHERE qa_posts.postid=(SELECT IF(LEFT(parent.type, 1)='A', parent.parentid, parent.postid) FROM qa_posts AS child LEFT JOIN qa_posts AS parent ON parent.postid=child.parentid WHERE child.postid=718245)) UNION ALL (SELECT '4', qa_posts.postid, qa_posts.categoryid, qa_posts.type, LEFT(qa_posts.type, 1), INSTR(qa_posts.type, '_HIDDEN')>0, qa_posts.acount, qa_posts.selchildid, qa_posts.closedbyid, qa_posts.upvotes, qa_posts.downvotes, qa_posts.netvotes, qa_posts.views, qa_posts.hotness, qa_posts.flagcount, qa_posts.title, qa_posts.tags, UNIX_TIMESTAMP(qa_posts.created), qa_posts.name, qa_categories.title, qa_categories.backpath, CONCAT_WS(',', qa_posts.catidpath1, qa_posts.catidpath2, qa_posts.catidpath3, qa_posts.categoryid), NULL, NULL, NULL, qa_posts.content, qa_posts.notify, UNIX_TIMESTAMP(qa_posts.updated), qa_posts.updatetype, qa_posts.format, qa_posts.lastuserid, INET_NTOA(qa_posts.lastip), qa_posts.paren
by
I updated my answer with some more things to try.

How many visitors/pageviews are you getting per day?
by
Thank you, Scott.  I'll try to make the changes.
Before the slowness problems began, I had 60,000 pageviews per day. Now my site has fewer than 20,000 pageviews per day and nearly 50,000 unique visitors per month.
by
Scott, you received my message?
I made a proposal for you.
by
Ok I confirm these patches work great...
I used to open 5 question to edit as admin that slows down my site extremely, I just tested with 20 question edit at same time as admin, did not do anything... I will keep testing tomorrow when the site is under heavy load...
...