The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
#1
|
|||
|
|||
I need some help optimizing the load time
Hi,
I want to optimize the loading time of my forums by uninstalling some hacks. I have 27 queries (1 queries for uncached templates (-for randomroute by the quotes on forumhome-hack). How can i go further? What is to do with the uncached template? Here are my debug-infos: Code:
27 queries (1 queries for uncached templates FORUMHOME (1) footer (1) forumhome_forumbit_level1_nopost (6) forumhome_forumbit_level2_post (15) forumhome_lastpostby (21) forumhome_loggedinuser (2) forumhome_stats_member (5) forumhome_stats_poster (5) forumhome_stats_thread (5) forumhome_todayloggedinuser (5) forumhome_todayloggedinusers (1) gobutton (1) header (1) headinclude (1) irc_loggedin (1) navbar (1) phpinclude_start (1) randomquote (1) spacer_close (1) spacer_open (1) timezone (1) username_loggedin (1) My explained Stats are in the textfiles. I really thank you for helping me. Unfortunatly learning through making failures is one of my prefered ways |
#2
|
||||
|
||||
27 queries on forum home?
That seems to be quite a lot - I got only 13-14. Code:
irc_loggedin (1) randomquote (1) Roughly looking at your queries: You got some statistics hack installed? That seems to cause a lot of queries. Btw: It would be a lot easier to read if it was HTML instead of TXT ... |
#3
|
|||
|
|||
Yeah the randomquote isnt cached, so what to do?
|
#4
|
||||
|
||||
Cache it
Add it to array $globaltemplates. |
#5
|
|||
|
|||
Hey thanks, now i know how to cache the templates. So i've done this.
Saved 1 Query on Forumhome. How can i go further? Saving more queries? Thank you very much KirbyDE edit: I#ve seen for the normal load of an Topic i have 19 Queries. |
#6
|
||||
|
||||
OK, so let's take a further look at your queries
Code:
SELECT id_empfaenger FROM sms WHERE id_empfaenger = 2 IMHO useless. Code:
SELECT user.avatarid, user.avatarrevision, avatarpath, NOT ISNULL(avatardata) AS hascustom, customavatar.dateline 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 = 2 It's up to you to decide if this is necessary Code:
select count(*) as new_posts from post where dateline > '1106285277' select count(*) as new_topics from thread where lastpost > '1106285277' Code:
select count(*) as all_users from user Now tihis is a total waste, as the number of users is in the datastore and could be aquired without a query. Code:
select count(*) as all_posts from post Code:
select count(*) as all_topics from thread Code:
SELECT * FROM quotes WHERE approved = 1 ORDER BY rand(877250764) Code:
SELECT template FROM template WHERE templateid = 5017 Quote:
Code:
SELECT userid, username, posts FROM user ORDER BY posts DESC LIMIT 0, 5 Code:
SELECT userid, username, posts, joindate FROM user ORDER BY joindate DESC LIMIT 0, 5 If you want this, I think it would be better to put this info in datastore when a new member registers. As the last newest member is already being stored I think this could be done without additional queries, it just needs code adjustments. Code:
SELECT COUNT(*) , SUM(views) AS hits FROM thread => There are a few things that can be optimized without loosing features. |
#7
|
|||
|
|||
Big Thanks!
That is really helpful. But if i look into my FORUMHOME the total amount of Threads and Posts are called by $totalthreads and $totalposts (for the statistics at the bottom). Strange. |
#8
|
||||
|
||||
Well, without knowing you actual code I can't tell more.
|
#9
|
|||
|
|||
Code:
++edited away++ |
#10
|
||||
|
||||
I meant the PHP code
And I am not sure if you didn't just violate the license agreement. Therefore it might be better to remove the template-code you posted. |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|