Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.5 > vBulletin 3.5 Add-ons
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
HELLCAT's Realtime Page Compressor Details »»
HELLCAT's Realtime Page Compressor
Version: 1.24, by Hellcat Hellcat is offline
Developer Last Online: Apr 2014 Show Printable Version Email this Page

Version: 3.5.3 Rating:
Released: 01-25-2006 Last Update: 02-19-2006 Installs: 422
Uses Plugins Template Edits
 
No support by the author.

This is my version of a realtime page compressor.
The idea is based on ShiningArcanine's port of the "Realtime Template Compressor", that is also based on the original concept by Logician, and can be found in this thread:
https://vborg.vbsupport.ru/showthread.php?t=83248

But since my version doesn't contain any of his original code anymore (even the regular expressions have been rewritten) and I added a bunch of new features I finally decided to release this one as a speperate thing.

Features:
  • Copmresses the final HTML output sent to the browser by ~10% to ~15%
    (see bellow for how this is achived)
  • Full controll via AdminCP options
    (you can turn it ON/OFF and choose if, and how the stats should be displayed - see screenshot)
  • Stats display can be fully customized via template edit
  • Areaes with intentional/wanted whitespace are left untouched
    (So this does not mess up user inputted text, text in [code] blocks and the such....)
  • JavaScript blocks are kept intact and functional

What does this exately do?
This plugin strips all unneccesary whitespace, linebreaks and HTML comments out of the final HTML code that vBulletin sends to the browser.
This way the pages get a bit smaller (saving bandwidth) and the browser often renders the pages faster since there's no whitespace it must skip.

Passages that are enclosed by <pre> and <textarea> tags are left untouched completely so text posted in [code], [php] and other bb-tags of that sort are not affected and kept like the user intended them to be.
Passages enclosed in <script> tags are only striped from leading whitspace but not of linebreaks - this way JavaScript (and other) code will remain functional and does not get messed up.


How to install
Couldn't be more easy.
If you have any other page/template complression tool installed -> uninstall it first.

Then go to "AdminCP -> Product Manager -> Add/Import product" and import the .XML you downloaded here.

Now go to the "vBulletin Options" in the AdminCP, under "Help Server Settings and Optimization Options" you will find the "Realtime Page Compressor Options" settings group.
Open the settings, change them to what you want and hit "SAVE"
(It's important that you SAVE the options even when you want to use the defaults! For vB to actually create theese settings in the DB they have to be saved at least once!!!)

Done

More details are in the README.


Have fun!


UPDATE 1.10
Not a day old and here comes the first update
  • Added compatibility for the "Any Media BB Code"
    Before the Any Media BB Code was screwed up in IE when the compressor was active -> FIXED
  • Raised compresseion ratio another 1 to 3 percent
    "Code comments" (stuff between "/*" and "*/" - used in CSS and JS for example) are now striped as well.

Update 1.20
  • Added the option to show the stats display to admins only.
    Go to "AdminCP -> vBulletin Options -> Real Time Compressor Settings" and you will find the new option there.
  • Fixed the "uncached template" issue
  • Tweaked the RegEx' a bit more
    But they still need quite some optimization/tweaking

Update 1.21
  • Added HTML tag to exclude blocks from compression
    Put blocks of HTML source between <nocompress>Your Source</nocompress> tags to have it untouched by the page compression.

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #82  
Old 01-28-2006, 03:18 PM
username12 username12 is offline
 
Join Date: Jan 2006
Posts: 109
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Hellcat
JavaScript is kept intact, my GoogleAds are not affected....
Maybe if the ads use HTML comments to determine where they should appear, since those are striped out....
Yes, they use HTML (just an image and link). Any way in a future version to add a tag that tells it to ignore specified areas, or even something I could implement myself now?
Reply With Quote
  #83  
Old 01-28-2006, 06:43 PM
DJ XtAzY DJ XtAzY is offline
 
Join Date: Feb 2005
Posts: 204
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

woot this updated one have a higher percentage now =]
Reply With Quote
  #84  
Old 01-28-2006, 06:55 PM
cd1986 cd1986 is offline
 
Join Date: Sep 2005
Location: UK
Posts: 79
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks for this - just installed and got a healthy 12% compression on my forum home page.
Reply With Quote
  #85  
Old 01-28-2006, 07:23 PM
Maagic's Avatar
Maagic Maagic is offline
 
Join Date: Mar 2002
Posts: 46
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Installed... works great 18% or so!
Reply With Quote
  #86  
Old 01-28-2006, 08:45 PM
kregger kregger is offline
 
Join Date: Jul 2005
Posts: 42
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

*clicks install*
Reply With Quote
  #87  
Old 01-28-2006, 08:59 PM
nevetS nevetS is offline
 
Join Date: May 2005
Location: Sunny California
Posts: 97
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Not trying to rain on anyone's parade here, but I have a question.

Doesn't vB support zlib compression out of the box? And wouldn't zlib compression give you this level of compression and more? And wouldn't adding this in addition to zlib compression needlessly increase the server load?

Like I said - not trying to rain on anybody's parade - this seems like a great concept - but I would like an explanation as to why I am wrong if there is one.

I'm not affiliated with this site - and I'm not sure if there's a linking policy here, but you can test the difference in the output by checking your page here: http://www.whatsmyip.org/mod_gzip_test/ it shows the original size, and gzipped size. I'm wondering if anybody who has it installed can report the improved numbers factoring in gzip compression.

I'm just thinking - if your real-world size improvement is closer to 1%, then maybe this isn't as good of an idea. If you aren't using gzip compression, then I expect the results from this plugin would be much more dramatic.

Just some thoughts...

----
This was such an easy install, I thought I'd try it out myself. Here are my results:
Plugin Active: [page compression: 81.58 k/98.58 k (17.24%)]
gzip page reports:
Original Size: 84 K
Gzipped Size: 11 K
Data Savings: 86.9%

With the product disabled:
gzip page reports:
Original Size: 89 K
Gzipped Size: 12 K
Data Savings: 86.52%

I find it strange that the website and the plugin report different page sizes, but it's probably a matter of one of them calculating /1024 versus the other one calculating /1000. The plugin did show improvement, but like I expected, not too much. I don't have an active forum, so I couldn't do this test on a lot of pages. I also have no idea how much this plugin would actually affect server load. Probably not that much, but I imagine it's really a question of webmaster preference as to whether or not this is worth it.

Great plugin though hellcat! And a serious amount of improvement for anyone not using compression already.
Reply With Quote
  #88  
Old 01-29-2006, 12:36 PM
Bounce's Avatar
Bounce Bounce is offline
 
Join Date: Mar 2004
Location: Edinburgh,Scotland
Posts: 919
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

nice one , saving between 10 and 15% depending on the page :squareeyed:

Cheers
Reply With Quote
  #89  
Old 01-29-2006, 01:24 PM
beatyourtruck's Avatar
beatyourtruck beatyourtruck is offline
 
Join Date: Jul 2005
Location: Wisconsin
Posts: 66
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

INSTALLED!

Excellent mod and very easy to do! I am saving 9% to 15% depending on the page.

Thanks! 8)
Reply With Quote
  #90  
Old 01-29-2006, 04:45 PM
Hellcat Hellcat is offline
 
Join Date: May 2003
Location: Germany
Posts: 560
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by username12
Yes, they use HTML (just an image and link). Any way in a future version to add a tag that tells it to ignore specified areas, or even something I could implement myself now?
I'm going to implement a HTML tag exclusion in the next update.
Then you can just put every block you want to leave untouched by the compression between <nocompress> and </nocompress> tags and the compressor will not touch it
Reply With Quote
  #91  
Old 01-29-2006, 07:21 PM
username12 username12 is offline
 
Join Date: Jan 2006
Posts: 109
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Hellcat
I'm going to implement a HTML tag exclusion in the next update.
Then you can just put every block you want to leave untouched by the compression between <nocompress> and </nocompress> tags and the compressor will not touch it
Sounds good. I'll definitely reinstall then.
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:35 AM.


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.07765 seconds
  • Memory Usage 2,318KB
  • Queries Executed 25 (?)
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
  • (3)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (1)pagenav_pagelinkrel
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (11)postbit_onlinestatus
  • (11)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_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
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete