scanlover
08-20-2010, 07:55 PM
ScanLover Forum is a fairly high traffic vBulletin forum. We are very heavy on large image attachments, and see heavy download of these content. We also use a pretty low-end server. The above presents some technical and performance challenges.
Below are a highlight of custom plugins done by me on the forum to improve performance. Other large vbulletin forum operators or geeky people may find this interesting.
===
- Sphinxsearch
Implemented sphinxsearch for our thread and post search. Otherwise the vbulletin would use mysql's resource-hungry text search which will bring our server to a crawl.
- External attachment server
By moving some attachment downloads to another server, this helps to reduce server resources and bandwidth on the main SLF server. Also, it is possible to remove the large attachments on the SLF server (if necessary) since the data is now held elsewhere.
- External thumbnail servers
It is not uncommon for each page on our image threads to hold >100 thumbnails. By viewing one page, up to 100 separate webserver and database server connections and threads are used. This presents a heavy load on the server since we have hundreds of users online at any one time.
Spreading our thumbnails to external servers help a lot to reduce server loads
- Auto block of attachment downloads for fast leechers
Each user has a download credit limit. Credits are used when a user downloads an attachment. The credits regenerates over time when the user does not download anything. If all credits are used, the user cannot download any more attachments until he passes a human test.
This is to mitigate problems arising from inconsiderate users who run attachment leeching scripts on our forum. These scripts download attachment indiscriminately and quickly, swallowing up precious bandwidth and server resources that should have gone to human users.
- Auto block of visitors from select countries
A simple IP based firewall to block out certain non-english speaking countries. An unfortunate decision because we would rather save our bandwidth for users who are more likely to be able to contribute (by posting) to the forum.
- Big File Upload
Some of our users use external file hosts for large files, but due to the nature of the "free" service and sometimes the questionable nature of the content, these large files get deleted by external hosts.
SLF provide our users our own large file upload facility with integrated forum login and drag-n-drop interface. This gives better safeguard against random deletions of the content.
Below are a highlight of custom plugins done by me on the forum to improve performance. Other large vbulletin forum operators or geeky people may find this interesting.
===
- Sphinxsearch
Implemented sphinxsearch for our thread and post search. Otherwise the vbulletin would use mysql's resource-hungry text search which will bring our server to a crawl.
- External attachment server
By moving some attachment downloads to another server, this helps to reduce server resources and bandwidth on the main SLF server. Also, it is possible to remove the large attachments on the SLF server (if necessary) since the data is now held elsewhere.
- External thumbnail servers
It is not uncommon for each page on our image threads to hold >100 thumbnails. By viewing one page, up to 100 separate webserver and database server connections and threads are used. This presents a heavy load on the server since we have hundreds of users online at any one time.
Spreading our thumbnails to external servers help a lot to reduce server loads
- Auto block of attachment downloads for fast leechers
Each user has a download credit limit. Credits are used when a user downloads an attachment. The credits regenerates over time when the user does not download anything. If all credits are used, the user cannot download any more attachments until he passes a human test.
This is to mitigate problems arising from inconsiderate users who run attachment leeching scripts on our forum. These scripts download attachment indiscriminately and quickly, swallowing up precious bandwidth and server resources that should have gone to human users.
- Auto block of visitors from select countries
A simple IP based firewall to block out certain non-english speaking countries. An unfortunate decision because we would rather save our bandwidth for users who are more likely to be able to contribute (by posting) to the forum.
- Big File Upload
Some of our users use external file hosts for large files, but due to the nature of the "free" service and sometimes the questionable nature of the content, these large files get deleted by external hosts.
SLF provide our users our own large file upload facility with integrated forum login and drag-n-drop interface. This gives better safeguard against random deletions of the content.