I’m just trying out a new method to optimize vBulletin’s front end scripts and CSS. It’s still a work in progress but these are the results I have seen on my test site (www.wirelessforums.org)
Without GZIP
Base VB (v3.6.8)
vbulletin_global.js – 43.8KB
vbulletin_menu.js – 17.8KB
vbulletin_read_marker.js – 6.7KB
vbulletin_md5.js – 9.6KB
JS total – 77.9KB
css – 5.7KB
Using minify
vbulletin_global.js – 23KB
vbulletin_menu.js – 10.4KB
vbulletin_read_marker.js – 3.3KB
vbulletin_md5.js – 6KB
JS total – 42.7 (45.1% savings)
css – 4.1K (28% savings)
With GZIP
Base VB (v3.6.8)
vbulletin_global.js – 12.5KB
vbulletin_menu.js – 4.7KB
vbulletin_read_marker.js – 2KB
vbulletin_md5.js – 3.3KB
JS total – 22.5KB
css – 1.3KB
Using minify and GZIP
vbulletin_global.js – 6.9KB
vbulletin_menu.js – 2.7KB
vbulletin_read_marker.js – 1KB
vbulletin_md5.js – 2.1KB
JS total – 12.7KB
This is an extra 43.5% savings on top of GZIP. A total of 65.2KB (83.7%) savings from the original.
css – 1.1KB
An extra 15.3% savings on top of GZIP. A total of 4.6KB (80.7%) savings from the original.
This is a huge improvement over the original file sizes and speeds up rendering of the page quite a bit. The new method doesn’t require you to download JS replacements for each version of vB, instead it works off the existing files. Hopefully this will silence the people who complained about copyright/piracy issues with me distributing the JS files (even though they’re distributed to every browser that downloads the page).
I’m also looking at some other ways to speed up rendering as much as possible. Stay tuned for downloads and a full write up.
I’ve done a bit of work on the database, added a bit of information and corrected mistakes.
Thanks to Owen and others for help with the data.
If you find this data useful, please donate.
What’s new in V2
- More accurate
- Added GPS co-ordinates
- Added PO Boxes and Private Bags
- Added Rural postcodes
- Removed regions (as some datasources labeled a city/town as one region and others differed.)
I’ve also taken the opportunity to include CSV and MSSQL formats, as well as MySQL.
History
I originally created the database as I needed street and suburb data for a project I was doing. No one else was stupid enough to spend that much time on it, so I took it on. NZ Post still has their PAF data, but are unlikely to release a free database of the postcodes.
Original Post
More info on NZ Addresses
Downloads
MySQL
nzpostcodes_v2.sql.gz (655KB)
nzpostcodes_v2.sql.bz2 (445KB)
CSV
nzpostcodes_v2.csv.zip (1.07MB)
All efforts have been made to ensure that there are no errors, but there are no guarantees, if you need 100% accurate data please buy NZ Post’s PAF data.
[UPDATE 20/04/08]
As a few people have pointed out, there was no suburb data in the MySQL database version of the postcode database. This has now been fixed. Sorry about the problems and how long it’s taken me to get around to fixing it.
I realized today that vBulletin’s Javascript was just too bulky and didn’t really need to be, especially when you have no plans to customize it yourself. So I grabbed all the packages of 3.6.x and minimized all the Javascript. In most cases the Javascript files are 50% of the original, which saves bandwidth and speeds up the loading of your forum.
Install:
- Backup all the .js files from the clientscript directory under your forum root.
- Copy the files from zip file that matches your version of vBulletin into the clientscript directory.
- Done!
Download:
vBulletin 3.6.0
vBulletin 3.6.1
vBulletin 3.6.2
vBulletin 3.6.3
vBulletin 3.6.4
vBulletin 3.6.5
vBulletin 3.6.6
vBulletin 3.6.7PL1
vBulletin 3.6.8
I’m always getting grief from my managers about not testing in IE6, which is hard when IE7 is installed on all machines these days. I recently found a little install tool which allows you to run multiple versions of IE on the same machine. It doesn’t fully install IE, just the dll’s and uses dll redirection to trick windows into running an older version of IE.
Although it’s not perfect, it’s a lot easier than running a virtual PC for each version.
The install can be found here: http://tredosoft.com/Multiple_IE
I’ve just received some data from Owen for RD and PO Box postcodes, so I’ll be added these into the database.
Also, stay tuned for Long/Lat coordinates for streets and postcodes.
I managed to figure out how to monitor Apache with Big Brother and LARRD. As it’s not very well documented I thought I’d share it with everyone.
First set your apache server to display status in the apache httpd.conf:
[code]
SetHandler server-status
Order deny,allow
Deny from all
Allow from 127.0.0.1
ExtendedStatus On
[/code]
Setting extended status to On does slow down the server a little bit, but it’s usually not noticeable. Remember to limit access to the status page to just the IP where your Big Brother server is monitoring from.
Add apache to @DATALIST in larrd-config.pl
Then in your apache-larrd.pl (under the larrd directory) you’ll need to hardcode the servers you want to monitor.
[code]
%host_h = (
‘server01’ => {
port => “80”,
url => “http://www.yoursite.com/server-status?auto”,
}
);
[/code]
The first part of the host_h array is to identify which server to attach the RRD file with. In this instance I’m monitoring a server called server01 and the website I have setup with the server-status page is http://www.youresite.com/server-status?auto. If your host is a FQDN (fully qualified domain name) then you can omit the full url and just have /server-status?auto and Big Brother will work out the URL.
With any luck you’ll have 4 new graphs on your trends/LARRD page.
I found a good page which outlines which characters can be used in email addresses:
http://www.remote.org/jochen/mail/info/chars.html
I was dissapointed when I saw the current Google sitemap generators available, so I wrote one.
Features:
– Generates Google sitemaps
– Generates Yahoo! sitemaps
– Generates plain text sitemap
– Splits sitemaps up into smaller files (as per Google’s instructions)
– Creates sitemap index file
– Pings Google/Yahoo!
This is the first release, so there’s probably some bugs in there somewhere. Please let me know if you find any. There are some examples in the zip file.
To best use the classes, set the variables on the page you call the class from, rather than editing the class file (so changes aren’t lost when you upgrade).
E.g.
[php]
$sitemap = new Google_Sitemap();
$sitemap->doPing = false;
$sitemap->gzip = false;
$sitemap->baseurl = “http://www.noodles.net.nz”;
[/php]
Download:
http://www.noodles.net.nz/downloads/sitemaps.zip
Version 0.2 – 14/05/2007
Fixed problem with script using too much memory when trying to sitemap hundreds of thousands of pages.