vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   Management Articles (https://vborg.vbsupport.ru/forumdisplay.php?f=217)
-   -   Speed Up Your Forums! vBulletin 4! (https://vborg.vbsupport.ru/showthread.php?t=237025)

ChopSuey 02-26-2010 10:00 PM

Speed Up Your Forums! vBulletin 4!
 
Hopefully this article will help your slow vBulletin 4 forum speed up a bit. :)

1. First of all, here are some admincp settings you can set, credit to eva2000
Quote:

For vB 4.x try to DISABLE = set to NO these options

Admin CP -> vBulletin Options -> General Settings -> Use Quick Navigation Menu

Admin CP -> vBulletin Options -> General Settings -> Thread/Forum Read Marking Type - Database automatic forum marking is very processor intensive compared to Inactivity/Cookie based or Database no automatic forum marking, so if your mysql process is constantly pegged at 100+ % cpu usage, you don't want to be using automatic forum marking Database type.

Admin CP -> vBulletin Options -> Forums Home Page Options -> Display Logged in Users?

Admin CP -> vBulletin Options -> Forum Home Page Options -> Display Today's Birthdays?

Admin CP -> vBulletin Options -> Forum Home Page Options -> Display Calendar Events?

Admin CP -> vBulletin Options -> Forum Display Options (forumdisplay) -> Show Users Browsing Forums

Admin CP -> vBulletin Options -> Thread Display Options -> Show Users Browsing Thread

Admin CP -> vBulletin Options -> Thread Display Options -> Check Thread Rating

Admin CP -> vBulletin Options -> Thread Display Options -> Check Thread Subscription (disable to check if it's load related if not re-enable it)

Admin CP -> vBulletin Options -> Thread Display Options -> Full Next / Prev Links

Admin CP -> vBulletin Options -> Message Searching Options -> Automatic Similar Thread search

Try to ENABLE = set to YES these options

AdminCP -> vBulletin Options > Cookies and HTTP Header options -. Enable GZip HTML Output - Set to 1 for optimum results.

Admin CP -> vBulletin Options -> Message Searching Options -> Queue Search Updates

Admin CP -> vBulletin Options -> Message Searching Options -> Search Result Sharing
2. Store CSS As files - more info here

Quote:

A complex CSS stylesheet can occupy quite a block of text when printed out in full. This entire block of CSS code must be included with every page viewed by your visitors, and with a lot of visitors over a long period of time this can mount up.

One of the beauties of CSS is that the stylesheet can be held in a separate file from the HTML content, allowing web browsers to store the CSS in their cache, negating the need to reload the stylesheet with every page viewed.

vBulletin allows you to have your stylesheets automatically saved to files by the system, resulting in lower bandwidth usage and faster-loading pages for your visitors.

To enable vBulletin to save your stylesheets as files, you must first ensure that your web server has permission to write and delete files within the clientscript/vbulletin_css directory.

You should then go to vBulletin Options > Style & Language Settings and switch the Store CSS Stylesheets as Files? setting to Yes.
After pressing the [Save], your stylesheets will be converted to files and saved into the clientscript/vbulletin_css directory.

Whenever you make a change to your styles that alters the CSS, the stored files will automatically be updated.
3. Enabling Datastore

To improve performance, vBulletin caches certain information which isn't updated often in the datastore, so that it doesn't have to be rebuilt every time it's needed.

Examples for this are

* forumcache - A serialized array with all the forums along with their options and permissions
* options - A serialized array with all the information set in the vBulletin Options
* profilefield - A serialized array of all the profile fields and their options.

The datastore data is stored in the datastore database table by default, but certain settings in the config.php file allow this to be saved in other places, to improve performance:
PHP Code:

 // ****** DATASTORE CACHE CONFIGURATION *****
 // Here you can configure different methods for caching datastore items.    
 // vB_Datastore_Filecache  - for using a cache file
 // $config['Datastore']['class'] = 'vB_Datastore_Filecache';    
 // vB_Datastore_Memcached - for using a Memcache server    
 // It is also necessary to specify the hostname or IP address and the port the server is listening on
 // $config['Datastore']['class'] = 'vB_Datastore_Memcached';
 // $config['Misc']['memcacheserver'] = '127.0.0.1';
 // $config['Misc']['memcacheport'] = '11211'; 

vB_Datastore_Filecache
This option saves the datastore data in the /includes/datastore/datastore_cache.php file. Reading from the filesystem is generally less load-intensive than querying the database.

To use this option, you'll need to make sure that the /includes/datastore/datastore_cache.php file is writable and readable by PHP. Usually this is chmod 777. Then, uncomment the following line in the config.php file.

(If your on a VPS or Dedi install XCache its faster than others. How to - Install Guide

4. Get rid of those rounded corners! Credit to Andy, original post here.
One reason vB4 is slower than vb3 is the use of shading and rounded corners. Add this to the bottom of the additional.css template and your forum will speed up considerably.
PHP Code:

* { -moz-box-shadownone !important; }
* { -
webkit-box-shadownone !important; }

* { -
moz-border-radius0px !important; }
* { -
webkit-border-radius0px !important; } 

Feedback from users, saying their forum loads faster.

5. [S]Install vB4 Supercharged[/S] download it here. It does NOT work on 4.0.2 PL1 just yet, we have to wait until the author has updated the modification.

6. vBulletin 4 optimize htaccess - add those contents to your htaccess.

7. Add to top of headinclude
HTML Code:

<META http-equiv=Page-Exit content=BlendTrans(Duration=0)>
<META http-equiv=Page-Enter content=BlendTrans(Duration=0)>

8. Download YSLow - add the contents to your htaccess.

9. You can Improve Page Loading Time

10. Enable Remote YUI:
Quote:

YUI (Yahoo! User Interface Library) script files are hosted locally on your server, you may however have them served from Yahoo or Google servers, saving you some bandwidth and potentially decreasing load times.
AdminCP > Settings > Server Settings And Optimization Options > Remote YUI to YES - Prefer Google.

11. In addition to this, check out articles from one of the worlds largest webmaser forums.

Optimize vBulletin 4

If you are using Memcached servers:

Monitor memcached servers with vBulletin

Thats it! If your forums have sped up a bit please let me know, if they have not and your using a VPS or Dedicated server, request for a server optimization.

https://vborg.vbsupport.ru/showthread.php?t=241782
https://vborg.vbsupport.ru/showthread.php?t=241783
More optimization

compwhizii 02-28-2010 01:25 PM

I said it once and I'll say it again, rounded corners don't and can not have an effect on how fast vBulletin generates a page. It's simply impossible that CSS could slow down the speed at which vBulletin retrieves data and sends it to the browser, CSS is a client side thing. What you are looking at is the speed at which your browser renders the page.

I refuse to believe this helps any until I see legitimate benchmarks.

goyo 02-28-2010 09:49 PM

Quote:

Originally Posted by compwhizii (Post 1993686)
I said it once and I'll say it again, rounded corners don't and can not have an effect on how fast vBulletin generates a page. It's simply impossible that CSS could slow down the speed at which vBulletin retrieves data and sends it to the browser, CSS is a client side thing. What you are looking at is the speed at which your browser renders the page.

I refuse to believe this helps any until I see legitimate benchmarks.

Exactly...it depends on the browser. As Chrome and Safari usually faster (both in javascript and CSS rendering) than Firefox it can have some very small effect on the loading time BUT I agree...that's the last thing what someone should look for in a page optimization...for example Opera and IE doesn't use this property at all...nor search engine crawlers ;)

Dunhamzzz 03-01-2010 02:40 PM

This seems to be more of a collaboration of other material as opposed to a helpful article. Looking at all the suggestions it's hard to work out what bottleneck you are actually trying to reduce. Server Runtime? Bandwidth? Browser-Rendering? In improving one, you're likely to worsen another.

- You need to explain those htaccess improvements, for one the 2 different "hacks" will simply over ride each other in some way, they may even over ride other elements if the user is unfamiliar with .htaccess and just overwrites their valuable vbSEO htaccess. You might want to mention that the .htaccess rules herewill make users cache everything for AGES; meaning if you edit a style once applying them, returning users won't ever see any updates you've made unless they do a cache refresh (ctrl + f5). Don't get me wrong, those caching parameters are pretty amazing at doing their job, props to the author.

- I agree with others, removing CSS rounded corners will only speed up browser-rendering and in new browsers possibly not even that much - actually not even at all in Internet Explorer.

- To be effective, you need to come up with ways to speed up your forum without turning loads of features off :(

- It's clear that vb4 is actually quite server intensive, so that's what needs to be worked on for most things. Some of those mods, like the "super charged" mod you mention actually ADDS processes in that it minifies the CSS/JS to save bandwith, they'll download faster sure, but there are now extra things running on an already bogged down server. The "download faster" argument is actually pretty invalid with the above .htaccces caching rules!

- This:
HTML Code:

<META http-equiv=Page-Exit content=BlendTrans(Duration=0)>
<META http-equiv=Page-Enter content=BlendTrans(Duration=0)>

Doesn't actually do much either! It only works in IE and and isn't even properly formed HTMl.

compwhizii 03-01-2010 08:47 PM

All in all this is a really low quality article.

janslu 03-03-2010 08:47 PM

Some of it is really important stuff. I think rounded corners may slow down page rendering on very slow, outdated computers. The real problem with vbulletin is the amount of requests generated by styling and inefficient coding. All those icons, gradients, separate javascripts and css files are being loaded from one server. Take a look at yslow and see the numbers...
I have no idea why it wasn't addressed properly by the dev team (single css, single javascript! try using css sprites for the images). It was released in 2009 for ... sake! We all know the impact of number of requests on page rendering time...
So... Use CDN for static files delivery where possible. Try spreading out between a couple of subdomains. You can have one amazon s3 bucket with multiple cloudfront subdomains (ie. static1. static2. etc). In StyleVars there is a section where you define image paths - put the whole link to CF there (http including). When uploading to s3 - remember to set your expiration dates properly. This will help with consecutive page loads. Setting the header is not easy, but it is possible.
As for javascript and css optimization - I'm still looking for a solution. I've tried supercharge but I'm afraid it breaks a little too much...

abdobasha2004 03-07-2010 12:01 PM

wow
thanks a lot
nice collection

theque 03-18-2010 05:33 PM

vbulletin 4 is so slow omg... i thought moving from 3.8 to 4 would be a big improvement but its seems they are going backwards in some areas... thanks for the tut but we shouldn't have to do this on a new product, its like getting a fast car but first take off all the windows doors and accessories before you can use it lol
My users are not impressed is ipboard a better option?:down:

ChopSuey 03-20-2010 10:49 AM

Quote:

Originally Posted by theque (Post 2005970)
vbulletin 4 is so slow omg... i thought moving from 3.8 to 4 would be a big improvement but its seems they are going backwards in some areas... thanks for the tut but we shouldn't have to do this on a new product, its like getting a fast car but first take off all the windows doors and accessories before you can use it lol
My users are not impressed is ipboard a better option?:down:

Ip Board, i haven't used it since maybe 08 ? But its a good software, you want a real forum? Stick with vBulletin :)
Quote:

Originally Posted by abdobasha2004 (Post 1999042)
wow
thanks a lot
nice collection

I know its bad.

sadiq6210 04-23-2010 08:11 AM

Thanks


All times are GMT. The time now is 07:00 PM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.02114 seconds
  • Memory Usage 1,793KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (2)bbcode_html_printable
  • (2)bbcode_php_printable
  • (6)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (2)pagenav_pagelink
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (10)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.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/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • pagenav_page
  • pagenav_complete
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete