Register Members List Search Today's Posts Mark Forums Read

Reply
 
Mod Options
vB Accelerator Details »
vB Accelerator
Mod Version: 0.4, by Vitaly (Coder) Vitaly is offline
Developer Last Online: Jul 2014 I like it Show Printable Version Email this Page

vB Version: 3.8.x Rating: (4 votes - 4.25 average) Installs: 85
Released: 07 Mar 2009 Last Update: 10 Mar 2009 Downloads: 540
Not Supported Uses Plugins Auto-Template Re-usable Code  

vb 4.0 version here

This mod is suited for medium and big boards. It reduces server load, caused by thumnails and big attachments.

what's the problem with?
  1. In original vB all thumbnails a downloaded via php. So, if you page contains 10-20 attached images, then each page php request will be followed by 10-20 thumbnails php requests. That's very bad.
  2. When attachments body transfered via php, that's much more waisteful, than direct transfer of static file. Especially for big files.
what this mod does:
  1. All thumbnails will have DIRECT links (served as static files). Much lower reply latency and server load.
  2. If you have nginx webserver, you php-fcgi will not participate in file transfer any more. It will reply with X-Accel-Redirect header. Then nginx will proceed attachment as static file.
    • No more problems with multiple downloads of 10-mb files.
    • No needs to restrict attachments and full-size images for guests and search bots.
  3. That works for forum posts, blogs, albums. Everywhere!
how to install:
  1. Make sure, this files are stored on disk, NOT in database:
    • post attachments & thumbnails
    • blog attachments & thumbnails
    • album images & thumbnails
  2. Make sure, that thumbnails are in web-accessible area. If not - reconfigure your web-server first. If you own big board - then you know how to do that .
  3. Check manually, that you can download any .thumb file via browser.
  4. Import this product, and set options for you configuration.
  5. Be happy to reduce server count in your cluster
PS. It's tested and works fine at my production site for 1 week. But I'll be happy to know server load statistics from big boards owners.

This mod is developped here: http://github.com/rcdesign/vb-accelerator . Patches are welcome.

History

0.4
- fixed bug with PHP wagnings in server logs.

0.3
- first public release

Download Now

Only licensed members can download files, Click Here for more information.

Supporters / CoAuthors

Screenshots

Click image for larger version

Name:	vbaccelerator.gif
Views:	1723
Size:	42.9 KB
ID:	96054  

Show Your Support

  • To receive notifications regarding updates -> Click to Mark as Installed.
  • This modification may not be copied, reproduced or published elsewhere without author's permission.
Similar Mod
Mod Developer Type Replies Last Post
Plugin Accelerator Trigunflame vBulletin 3.5 Add-ons 259 27 Sep 2011 21:11

Comments
  #2  
Old 07 Mar 2009, 00:54
Vitaly's Avatar
Vitaly Vitaly is offline
 
Join Date: Apr 2004
Faq

Q1. I don't have nginx. Will this mod work for me?

Yes, partially. Enable direct thumbnail links, but disable nginx acceleration. You'll still have serious benefit, if your forum is plenty of attachments.

Q2. What about lignttpd, apache and so on? They have X-Sendfile, alternative to nginx X-Accel-Redirect.

I know, but:
  • I don't have such configurations to test, and I don't have time to implement that. You can do it yourself or hire someone (NOT ME) for this work.
  • X-Sendfile don't support partial content download . Nginx's X-Accel-Redirect it the best you can use.
Q3. Is it safe to give direct access for thumbnails?

Why not? You can give direct access for thumbnails, but disable direct access to original files. Just configure your server properly. See examples below.

Q4. Thumbnails looks like files with strange extention and mime-type. Will those be ok in browser?

Yes. HTML-page address those files via imagetag. So, browser show those properly, even with wrong mime and strange extention.

Q5. Why don't you fix that for sure?

Because that requires vB sources modification, and i hate such things. And if everyting works fine, who cares about mimes ?

Q6. My forum has 20 users online, and I don't see difference at my 32-core server with 128Gb ram and 8 SSD raid array.

You a happy man, really.

Q7. Does it work with VBSEO ?

If attachment rewrite is disabled - yes, it works. And check, that attachments path is separated in vbseo rewrite rules in webserver config. I use vbseo in this mode with no problems. Sorry, no plans now to make better integration with vbseo. But code is reuseable, or you can send your patches



Server configuration examples

let's say, whe have the following folders structure:

/uploads
/uploads/blogs/* <- blog attachments & thumbnails
/uploads/posts/* <- forum attachments & thumbnails
/uploads/albums/* <- album images
/uploads/al_thumbs/* <- album previews

So, we have to setup direct access for thumbtails, but protect original files.

Nginx

# globally disable external access, but enable for X-Accel-Redirect
location /uploads {
internal;
}
# enable direct access to blogs & posts thumbnails, but nothing else!
location ~* /uploads/(.*)\.thumb$ {
}
# enable direct access to album thumbnails
location /uploads/al_thumbs/ {
}

Apache/Lighttpd

TBD. You are welcome to share your one

Last edited by Vitaly; 21 May 2009 at 22:55.
Reply With Quote
  #3  
Old 07 Mar 2009, 01:05
lonasdigital's Avatar
lonasdigital lonasdigital is offline
 
Join Date: Dec 2006
Gracias Voy a probarlo ahora mismo .
Reply With Quote
  #4  
Old 07 Mar 2009, 01:25
Frondy's Avatar
Frondy Frondy is offline
 
Join Date: Feb 2009
Well, it works! Thank you!
Reply With Quote
  #5  
Old 07 Mar 2009, 03:03
rob01 rob01 is offline
 
Join Date: Sep 2008
Real name: robert
is this a good option for small forums?
Reply With Quote
  #6  
Old 07 Mar 2009, 03:25
JamesAB JamesAB is offline
 
Join Date: Jan 2004
Q4. Thumbnails looks like files with strange extention and mime-type. Will those be ok in browser?

Yes. HTML-page address those files via imagetag. So, browser show those properly, even with wrong mime and strange extention.
I'm not using this mod, but I recently looked into serving static thumbnails on vBulletin.

In apache httpd.conf, I know you can use:

Block Disabled:      (Update License Status)  
Suspended or Unlicensed Members Cannot View Code.

__________________
Custom HTTP Error Pages
Reply With Quote
  #7  
Old 07 Mar 2009, 03:33
lazydesis lazydesis is offline
 
Join Date: Sep 2006
what is this nginx ?i have centos OS and apache .. will this increase performance on that?
__________________
http://www.lazydesis.com
Reply With Quote
  #8  
Old 07 Mar 2009, 03:38
Vitaly's Avatar
Vitaly Vitaly is offline
 
Join Date: Apr 2004
Originally Posted by rob01 View Post
is this a good option for small forums?
Everything is relative in this life . That depends on attachments count and CPU/IO load. If you have no attachments at all, you'll have nothing with this mod.

But nobody prohibit you to try and compare if server load changes . At least, direct linked thumbnails will be loaded faster for your users.

Originally Posted by JamesAB View Post
I'm not using this mod, but I recently looked into serving static thumbnails on vBulletin.

In apache httpd.conf, I know you can use:

Block Disabled:      (Update License Status)  
Suspended or Unlicensed Members Cannot View Code.
Yes. Exactly. But in fact that's not required. My rule is simple: the less customisations - the less possible mistakes in the future . You can always add it later, if something goes wrong.
Reply With Quote
  #9  
Old 07 Mar 2009, 03:46
Vitaly's Avatar
Vitaly Vitaly is offline
 
Join Date: Apr 2004
Originally Posted by lazyindian View Post
what is this nginx ?i have centos OS and apache .. will this increase performance on that?
Yes. Nginx/lighttpd/lightsphere/zeus + php-fcgi will give you serious benefits over apache + mod_php on burst loads.

In fact, that should be done before any futher vb optimizations. Maybe I'm a bit categoric, but in my opinion apache+mod_php system is absolutely inpredictable at big loads.

Server optimisation should be done prior to any scripts optimization. That's essential.
Reply With Quote
  #10  
Old 07 Mar 2009, 07:59
Bounce's Avatar
Bounce Bounce is offline
 
Join Date: Mar 2004
Real name: J
I don't have an uploads folder so I don't know the paths

Path to etc

How do I find this out?
__________________
Thanks for your help

J
Reply With Quote
  #11  
Old 07 Mar 2009, 08:06
Vitaly's Avatar
Vitaly Vitaly is offline
 
Join Date: Apr 2004
ACP -> Attachments -> Storage type
ACP -> User Albums -> Storage type

You'd better look to vB documentation about details. That's VERY CPU/Disk intencive operation, and you have to backup your board.
Reply With Quote
  #12  
Old 07 Mar 2009, 08:42
Bounce's Avatar
Bounce Bounce is offline
 
Join Date: Mar 2004
Real name: J
Originally Posted by Vitaly View Post
ACP -> Attachments -> Storage type
ACP -> User Albums -> Storage type
thanks
Originally Posted by Vitaly View Post
You'd better look to vB documentation about details. That's VERY CPU/Disk intencive operation, and you have to backup your board.
yip aware o that,ty
__________________
Thanks for your help

J
Reply With Quote
  #13  
Old 08 Mar 2009, 23:27
mindhunter77 mindhunter77 is offline
 
Join Date: Jan 2006
Anyone have any code to make the thumbnails accessible in LITGHTPD ?
Reply With Quote
  #14  
Old 09 Mar 2009, 00:10
relaxiha relaxiha is offline
 
Join Date: Jan 2009
Warning: Invalid argument supplied for foreach() in [path]/includes/class_postbit.php(265) : eval()'d code on line 43


ERROR
Reply With Quote
  #15  
Old 09 Mar 2009, 07:13
Vitaly's Avatar
Vitaly Vitaly is offline
 
Join Date: Apr 2004
relaxiha,

1. Which php version?

2. Fatal error or warning message in webserver log?

3. At which page?

http://forum.rcdesign.ru/f14/

Seems to work. Go to any topic with attachments and see direct links for preview sources.

Last edited by Vitaly; 09 Mar 2009 at 07:42.
Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Mod Options

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


New To Site? Need Help?

All times are GMT. The time now is 09:59.

Layout Options | Width: Wide Color: