Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 General Discussions
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Display Modes
  #1  
Old 01-03-2005, 07:47 AM
cinq's Avatar
cinq cinq is offline
 
Join Date: Oct 2002
Posts: 1,398
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Reducing the number of queries

Coding a hack and was pretty shocked to see a

Quote:
Executed 35 queries
at the base of the page ( in debug mode ).
And the functonality is merely at a quater of what I expect the final page to be showing....

That's rather high ain't it, for a simple listing page.

How can one go about reducing the number of queries ?
Even outputting the base template ( WITH NO CODE ), just evaluating the nav bar, gives me 5 queries.

Am i missing something here ?
Reply With Quote
  #2  
Old 01-03-2005, 11:28 AM
Paul M's Avatar
Paul M Paul M is offline
 
Join Date: Sep 2004
Location: Nottingham, UK
Posts: 23,748
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

It would be impossible to answer your question without seeing your code, but I notice a lot of people worry too much about sql queries. Most queries run in a few milliseconds or less and most peoples mysql is spending 80%+ of it's time doing nothing.

If you have access to you server, view the mysql processlist (or install mytop) and see what your mysql is doing - the chances are that most of the time you won't see much listed as the queries are running too fast to be caught and displayed.
Reply With Quote
  #3  
Old 01-03-2005, 11:48 AM
Dean C's Avatar
Dean C Dean C is offline
 
Join Date: Jan 2002
Location: England
Posts: 9,071
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Chances are you have a query loop in there. Between 10-20 queries on one page is more or less an average, but chances are there are more efficient ways of doing things if you have 35

As Paul said, if you show us the code maybe we can help out a little.
Reply With Quote
  #4  
Old 01-03-2005, 12:03 PM
Xenon's Avatar
Xenon Xenon is offline
 
Join Date: Oct 2001
Location: Bavaria
Posts: 12,878
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Also often custom hacks forget to add created templates to the template cache, so each template will produce one extra query...
Reply With Quote
  #5  
Old 01-03-2005, 12:59 PM
cinq's Avatar
cinq cinq is offline
 
Join Date: Oct 2002
Posts: 1,398
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Yep Stefan, I make sure all the templates called are in the template cache ( cos the queries count warns me if otherwise ).

Ok, perhaps I shall post the hack when fully functional, and then concentrate on query optimizations.
Gotta admit while it is looking good, the queries are rather messy.....and loop-y (Dean, you're right )

p.s query count now stands at 42 ... argh
Reply With Quote
  #6  
Old 01-03-2005, 04:39 PM
AN-net's Avatar
AN-net AN-net is offline
 
Join Date: Dec 2003
Location: AnimationTalk.com
Posts: 2,367
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by cinq
Yep Stefan, I make sure all the templates called are in the template cache ( cos the queries count warns me if otherwise ).

Ok, perhaps I shall post the hack when fully functional, and then concentrate on query optimizations.
Gotta admit while it is looking good, the queries are rather messy.....and loop-y (Dean, you're right )

p.s query count now stands at 42 ... argh
possible to combine queries together?
Reply With Quote
  #7  
Old 01-03-2005, 04:47 PM
rake's Avatar
rake rake is offline
 
Join Date: Nov 2002
Posts: 311
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by AN-net
possible to combine queries together?
I'd rather have 3 fast queries than a big slow one.. But it depends on the query, so i can't really argue with you.
Reply With Quote
  #8  
Old 01-03-2005, 09:14 PM
Xenon's Avatar
Xenon Xenon is offline
 
Join Date: Oct 2001
Location: Bavaria
Posts: 12,878
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

the most important: clean out that loop ^^
Reply With Quote
  #9  
Old 01-03-2005, 09:55 PM
AN-net's Avatar
AN-net AN-net is offline
 
Join Date: Dec 2003
Location: AnimationTalk.com
Posts: 2,367
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by rake
I'd rather have 3 fast queries than a big slow one.. But it depends on the query, so i can't really argue with you.
of course but for 35 queries some must be able to be combined
Reply With Quote
  #10  
Old 01-03-2005, 11:26 PM
cinq's Avatar
cinq cinq is offline
 
Join Date: Oct 2002
Posts: 1,398
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I think it is very possible but due to my limited knowledge, I would need help from you folks.

Will start a new thread in the near future with the code specifics for you folks to help me out
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 01:53 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.07386 seconds
  • Memory Usage 2,246KB
  • Queries Executed 13 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (4)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (10)post_thanks_box
  • (10)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (10)post_thanks_postbit_info
  • (10)postbit
  • (10)postbit_onlinestatus
  • (10)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete