The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
#1
|
|||
|
|||
![]()
<i>(If they are needed, I don't have server specs at the moment, I'm waiting for the account holder to get me that information)</i>
Okay, we've been having some serious speed issues for over a year now and I apologize if I posted this in the wrong area. Our forum, is going God awful slow. We're on a dedicated hosting plan from the Planet but here for the last year or more, the forum itself has been slow, and the server was optimized about a week ago by the Planets technical staff and it literally appears to be even worse now. It's not like our forum is being overwhelmed though, about two years ago, and further back, we were a bustling quick loading forum, we had hundreds of users on the forum at one time, so I know we should be able to handle our current capacity relatively easily. We've optimized vBulletin too, limited the search engine bots, and I disabled all the modifications to see if they were causing the slow loading times, no dice there either. If anybody cares to check, you can go to pwmforums.com and see how slow it is, then go to pwmania.com (the main site) and see how relatively fast it is. We have about 5 sites hosted on the server, with the PWM site being by far the largest, but its been like that ever since we bought the server, probably 3-4 years ago. ---- Okay, I went through that long story to ask this question. I've seen other forums that have apparently turned their forum into .html format and doing away with the .php, which I feel may be why the forum, and not the sites, is slow. So...any advice on how I could turn our forum into the .html formats to see if it helps improve our loading times. |
#2
|
||||
|
||||
![]()
You won't be able to use HTML, the PHP is used to render dynamic content.
Have you checked the vB error logs? Sometimes they can clue you into some problem that is occurring frequently which slows down the site. Also, have you optimized the database at all? The more activity on a board, the more overhead gets generated for the database tables - the more overhead, the longer it takes to query from a table. I try to optimize the tables at least once per week. Finally, large user databases can slow down a lot of the CRON jobs that run every hour. Run a user search in your AdminCP and delete all of the people who have 0 posts, and it should clear things up. ![]() |
#3
|
|||
|
|||
![]() Quote:
I'll look into those errors logs and see if anything can be found. Now when you say optimize the database, you mean optimizing the database through vBulletin with those Maintenance tools or actually optimizing it through the Server? |
#4
|
|||
|
|||
![]()
that board probably has done one of two things; used mod_rewrite to change the path for the files OR setup apache to pass things with a html extension via php before outputting.
I see what you mean about it being slow; i'll take a browse around and see if there are any suggestions i have. Also, theres an ad at the bottom of your page that advertises part time job at $50-$100 an hour - its a scam. You may want to remove those particular ads. (They link to sites such as Kevin gets green etc) |
#5
|
||||
|
||||
![]() Quote:
As for the users, I'm just saying that they could be bogging down your CRON jobs. If they are, then you might need to see if there's something wrong with the CRON jobs themselves - some modifications will add new CRON jobs, or even alter existing ones, so you've got to be careful. Well, doing it through either the maintenance tools or through the server is fine. I prefer to use phpmyadmin to do it, but it does pretty much the same thing - so it's no big deal to use the one in vB's adminCP. |
#6
|
|||
|
|||
![]()
hrm, close your forum; put it in debug mode and have a look at where the time is being taken generating the pages. I suspect you may have a rogue sql query doing something bad...
|
#7
|
|||
|
|||
![]()
I installed KX Debug and heres what I got...I hope this stuff is safe to post here. If any of yall can actually dissect what this stuff means, it would be a great help.
Code:
Template Usage: * (1)FORUMHOME * (1)ad_footer_end * (1)ad_footer_start * (1)ad_forumhome_afterforums * (1)ad_header_end * (1)ad_header_logo * (1)ad_navbar_below * (1)cyb_lastxhoursvisitors * (1)footer * (1)forumhome_event * (8)forumhome_forumbit_level1_nopost * (1)forumhome_forumbit_level1_post * (27)forumhome_forumbit_level2_post * (28)forumhome_lastpostby * (14)forumhome_loggedinuser * (1)forumhome_markread_script * (46)forumhome_subforumbit_post * (1)forumhome_subforumseparator_post * (1)gobutton * (1)header * (1)headinclude * (1)navbar * (9)navbar_notifications_menubit * (6)option * (1)spacer_close * (1)spacer_open * (1)vbplaza_navbar_buttons_left * (1)vbplaza_usercp_navbar_bottom Phrase Groups Available: * global * holiday Included Files: * ./index.php * ./global.php * ./includes/init.php * ./includes/class_core.php * ./includes/config.php * ./includes/functions.php * ./includes/class_datastore.php * ./includes/datastore/datastore_cache.php * ./includes/class_hook.php * ./plugins/credits_plugins.php * ./includes/functions_credits.php * ./vbplaza/includes/functions.php * ./vbplaza/includes/plugins_global.php * ./includes/functions_notice.php * ./includes/functions_bigthree.php * ./includes/functions_forumlist.php * ./includes/functions_calendar.php * ./includes/functions_user.php Hooks Called: * init_startup * fetch_userinfo_query * fetch_musername * vbplaza_build_username_style_complete * vbplaza_build_usertitle_style_complete * fetch_userinfo * cache_permissions * style_fetch * cache_templates * global_start * parse_templates * notices_check_start * notifications_list * global_setup_complete * forumhome_start * forumhome_event * forumhome_loggedinuser_query * forumhome_loggedinuser * cache_ordered_forums * forumbit_subforumbit * forumbit_subforumbit2 * forumbit_display * forumhome_complete like 30 returning default icon messages at the end "php_sapi_name(): apache2handler Queries Executed: Code:
SQL Query SELECT * FROM datastore WHERE title IN ('credits_central','credits_forum_overrides','credits_interest') id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE datastore range PRIMARY PRIMARY 50 3 Using where Time Before: 0.06076 seconds Time After: 0.06087 seconds Time Taken: 0.00012 seconds Session Handling SQL Query SELECT * FROM session WHERE sessionhash = '1c5416e5093187ce37966a8d28de3c2f' AND lastactivity > 1239834778 AND idhash = '57d8fa56204064a0f608d7c09072e6f6' id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE session const PRIMARY PRIMARY 32 const 1 Time Before: 0.06225 seconds Time After: 0.06242 seconds Time Taken: 0.00016 seconds SQL Query SELECT userfield.*, usertextfield.*, user.*, UNIX_TIMESTAMP(passworddate) AS passworddate, user.languageid AS saved_languageid, IF(displaygroupid=0, user.usergroupid, displaygroupid) AS displaygroupid, language.phrasegroup_global AS phrasegroup_global, language.phrasegroup_holiday AS phrasegroup_holiday, language.options AS lang_options, language.languagecode AS lang_code, language.charset AS lang_charset, language.locale AS lang_locale, language.imagesoverride AS lang_imagesoverride, language.dateoverride AS lang_dateoverride, language.timeoverride AS lang_timeoverride, language.registereddateoverride AS lang_registereddateoverride, language.calformat1override AS lang_calformat1override, language.calformat2override AS lang_calformat2override, language.logdateoverride AS lang_logdateoverride, language.decimalsep AS lang_decimalsep, language.thousandsep AS lang_thousandsep FROM user AS user LEFT JOIN userfield AS userfield ON (user.userid = userfield.userid) LEFT JOIN usertextfield AS usertextfield ON (usertextfield.userid = user.userid) LEFT JOIN language AS language ON (language.languageid = IF(user.languageid = 0, 1, user.languageid)) WHERE user.userid = 1 id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE user const PRIMARY PRIMARY 4 const 1 1 SIMPLE userfield const PRIMARY PRIMARY 4 const 1 1 SIMPLE usertextfield const PRIMARY PRIMARY 4 const 1 1 SIMPLE language system PRIMARY 1 Time Before: 0.06465 seconds Time After: 0.06749 seconds Time Taken: 0.00283 seconds Time Before: 0.06144 seconds Time After: 0.06865 seconds Time Taken: 0.00721 seconds SQL Query SELECT access.*, forum.forumid, FIND_IN_SET(access.forumid, forum.parentlist) AS ordercontrol FROM forum AS forum INNER JOIN access AS access ON (access.userid = 1 AND FIND_IN_SET(access.forumid, forum.parentlist)) ORDER BY ordercontrol DESC id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE access ref PRIMARY PRIMARY 4 const 1 Using where; Using temporary; Using filesort 1 SIMPLE forum ALL 90 Using where Time Before: 0.07407 seconds Time After: 0.07418 seconds Time Taken: 0.00011 seconds SQL Query SELECT calendarpermission.usergroupid, calendarpermission.calendarpermissions,calendar.calendarid,calendar.title, displayorder FROM calendar AS calendar LEFT JOIN calendarpermission AS calendarpermission ON (calendarpermission.calendarid = calendar.calendarid AND usergroupid IN (6)) ORDER BY displayorder ASC id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE calendar system 1 1 SIMPLE calendarpermission system 0 const row not found Time Before: 0.07506 seconds Time After: 0.07517 seconds Time Taken: 0.00011 seconds SQL Query SELECT * FROM style WHERE (styleid = 25) OR styleid = 24 ORDER BY styleid DESC LIMIT 1 id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE style range PRIMARY PRIMARY 2 2 Using where Time Before: 0.07675 seconds Time After: 0.07701 seconds Time Taken: 0.00027 seconds SQL Query SELECT title, template FROM template WHERE templateid IN (17991,18083,18085,18086,18087,18088,18089,18090,18091,18093,18094,18095,18096,18097,18092,18084,0,15725,15647,18490,17993,17992,17994,16453,17988,18265,15617,15618,18218,18219,18485,18488,18497,18238,18239,18240,18241,18439,18502,18501,18503,18506,1354,1355,1356,14897,14894,14895,14882,14884,16435,16352,16337,16338,16339,16340,16342,16341,16343,16344,16345,16346,16347,17923,17924,17925,17926,18527,18554,18570) id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE template range PRIMARY PRIMARY 4 70 Using where Time Before: 0.08075 seconds Time After: 0.08140 seconds Time Taken: 0.00065 seconds SQL Query SELECT * FROM credits_bank WHERE userid = 1 AND status = 1 id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE credits_bank ALL 139 Using where Time Before: 0.53086 seconds Time After: 0.53099 seconds Time Taken: 0.00014 seconds SQL Query SELECT COUNT(post.dateline) AS pcount FROM post AS post FORCE INDEX (dateline) INNER JOIN thread AS thread USING (threadid) WHERE post.dateline > 1239828223 AND thread.forumid IN (0196,3,155,197,4,208,216,1,2,28,9,168,169,170,183,211,212,214,171,172,173,198,210,215,5,6,156,157,158,159,213,12,14,130,21,153,95,32,31,94,34,111,107,207,40,113,29,30,160,194,75,176,35,190,191,199,200,201,202,203,164,177,178,195,179,180,181,182,152,166,167,175,154,205,161,162,163,165,192,186,204,209,187,188,189,193,131,132,127,129) id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE post range dateline dateline 4 77 Using where 1 SIMPLE thread eq_ref PRIMARY,forumid PRIMARY 4 pwmania_forums.post.threadid 1 Using where Time Before: 0.53372 seconds Time After: 0.53381 seconds Time Taken: 0.00010 seconds SQL Query SELECT COUNT(dateline) AS rcount FROM reputation WHERE userid = 1 AND dateline > 1239742528 id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE reputation ref userid,dateline userid 4 const 63 Using where Time Before: 0.53459 seconds Time After: 0.53468 seconds Time Taken: 0.00009 seconds SQL Query SELECT id FROM cyb_chatbox AS cyb_chatbox WHERE dateline > '1239828223' id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE cyb_chatbox ALL 914 Using where Time Before: 0.53570 seconds Time After: 0.53579 seconds Time Taken: 0.00009 seconds SQL Query SELECT noticeid FROM noticedismissed AS noticedismissed WHERE noticedismissed.userid = 1 id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE noticedismissed ref userid userid 4 const 1 Using where Time Before: 0.54545 seconds Time After: 0.54557 seconds Time Taken: 0.00012 seconds SQL Query SELECT template FROM template WHERE templateid = 18478 id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE template const PRIMARY PRIMARY 4 const 1 Time Before: 0.55187 seconds Time After: 0.55197 seconds Time Taken: 0.00010 seconds End call of global.php: 0.558423995972 SQL Query SELECT user.username, (user.options & 512) AS invisible, user.usergroupid, session.userid, session.inforum, session.lastactivity, session.badlocation, IF(displaygroupid=0, user.usergroupid, displaygroupid) AS displaygroupid, infractiongroupid FROM session AS session LEFT JOIN user AS user ON(user.userid = session.userid) WHERE session.lastactivity > 1239834778 ORDER BY username ASC id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE session ALL 100 Using where; Using temporary; Using filesort 1 SIMPLE user eq_ref PRIMARY PRIMARY 4 pwmania_forums.session.userid 1 Time Before: 0.56257 seconds Time After: 0.56403 seconds Time Taken: 0.00146 seconds SQL Query SELECT forum.forumid, lastpost, lastposter, lastthread, lastthreadid, lasticonid, threadcount, replycount, lastpostid, lastprefixid FROM forum AS forum id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE forum ALL 90 Time Before: 0.57410 seconds Time After: 0.57452 seconds Time Taken: 0.00042 seconds SQL Query SELECT moderator.*, user.username, IF(user.displaygroupid = 0, user.usergroupid, user.displaygroupid) AS displaygroupid, infractiongroupid FROM moderator AS moderator INNER JOIN user AS user USING(userid) WHERE moderator.userid = 1 id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE user const PRIMARY PRIMARY 4 const 1 1 SIMPLE moderator ref userid_forumid userid_forumid 4 const 1 Using where Time Before: 0.58117 seconds Time After: 0.58150 seconds Time Taken: 0.00033 seconds SQL Query SELECT user.avatarid, user.avatarrevision, avatarpath, NOT ISNULL(customavatar.userid) AS hascustom, customavatar.dateline, customavatar.width, customavatar.height, customavatar.width_thumb, customavatar.height_thumb FROM user AS user LEFT JOIN avatar AS avatar ON avatar.avatarid = user.avatarid LEFT JOIN customavatar AS customavatar ON customavatar.userid = user.userid WHERE user.userid = 1 id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE user const PRIMARY PRIMARY 4 const 1 1 SIMPLE avatar const PRIMARY PRIMARY 2 const 0 unique row not found 1 SIMPLE customavatar const PRIMARY PRIMARY 4 const 1 Time Before: 0.64494 seconds Time After: 0.64535 seconds Time Taken: 0.00041 seconds SQL Query select p.threadid, t.forumid from post p left join thread t on(t.threadid = p.threadid) where p.userid = 1 Time Before: 0.64580 seconds Time After: 0.64848 seconds Time Taken: 0.00268 seconds SQL Query select count(*) as newposts from post where dateline >= 1239828223 and visible = 1 Time Before: 0.67740 seconds Time After: 0.67750 seconds Time Taken: 0.00010 seconds SQL Query select count(*) as newthreads from thread where dateline >= 1239828223 and visible = 1 and sticky in(0,1) Time Before: 0.67769 seconds Time After: 0.67777 seconds Time Taken: 0.00009 seconds SQL Query select count(*) as lastposts from post where visible = 1 and dateline >= 1239749278 Time Before: 0.67800 seconds Time After: 0.68085 seconds Time Taken: 0.00285 seconds SQL Query SELECT userid, username, usergroupid, displaygroupid, lastactivity, IF(user.options & 512, 1, 0) AS invisible FROM user AS user WHERE lastactivity > 1239749278 ORDER BY username ASC id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE user range lastactivity lastactivity 4 422 Using where; Using filesort Time Before: 0.68183 seconds Time After: 0.68713 seconds Time Taken: 0.00531 seconds SQL Query SELECT userip, dateline FROM cybvilxh_guests AS cybvilxh_guests WHERE dateline > 1239749278 id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE cybvilxh_guests ALL 1337 Using where Time Before: 0.77844 seconds Time After: 0.78353 seconds Time Taken: 0.00509 seconds SQL Query UPDATE session SET lastactivity = 1239835678, location = '/index.php?explain=1', inforum = 0, inthread = 0, incalendar = 0, badlocation = 0 WHERE sessionhash = '1c5416e5093187ce37966a8d28de3c2f' Time Before: 0.79350 seconds Time After: 0.79380 seconds Time Taken: 0.00030 seconds SQL Query UPDATE user SET lastactivity = 1239835678 WHERE userid = 1 Time Before: 0.79396 seconds Time After: 0.79453 seconds Time Taken: 0.00058 seconds Page generated in 0.790579080582 seconds with 28 queries, spending 0.0247750282288 doing MySQL queries and 0.765804052353 doing PHP things. Shutdown Queries: DISABLED |
#8
|
||||
|
||||
![]()
One big red flag to me is the vbPlaza thing. That modification was removed from vbulletin.org for security exploits that the author refused to fix. He later on opened his own website for it and he claims that the exploits have been patched - but I'm still kinda hesitant.
Another thing, your guest views are taking the longest according to that read out. Do you have RSS enabled for your board? That's one way I can see guest views going up like that. But all of those guest views might also be a person running a botscript to check for exploits in your vbPlaza... |
#9
|
|||
|
|||
![]() Quote:
I'm tempted to install a 2nd copy of vbulletin on the server for testing purposes to see if it too runs slow...possibly indicating a server/mysql problem and not a vb problem. |
#10
|
||||
|
||||
![]()
How many modifications have you installed? (And which?)
|
![]() |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
![]() |
|
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|