Performance Comparison Of NewBB 1 Vs NewBB 2
THE TEST ORIGIN
I decided to create this article for two main reasons. The primary one was due to the regular postings on the official Xoops forums reporting slow loading times after upgrading from NewBB 1 to NewBB 2, and I wanted to provide some data which could put some kind of gauge on the performance differences between the two versions. The other main reason was due to the fact that we are looking to upgrade from NewBB 1 to NewBB 2 over at IIS Resources which at the time of writting this has nearly 7000 members and approaching 14,000 forum posts. With a community this size, and as active as they are, the is a very real potential that the site would be deeply impacted by any kind of significant performance hit the upgrade might bring.
THE TEST ENVIRONMENT
The test itself consisted of NewBB 1 setup with default settings, NewBB 2 setup with default settings, and NewBB 2 setup with optmised settings. The default setups are pretty straight forward, with the modules just being run with the settings as they are when the modules are first installed. With the NewBB 2 optimised setup I changed over a dozen settings in the Newbb 2 preferences menu which I though would improve performance. These changes where;
The Servers - Hardware
I conducted the tests on my workstation which represents a fairly standard PC configuration for this day and age. This however is still more processing power than most people will have available to them in shared hosting environments which is noted in the considerations section of this article.
The Servers - Software
Another very important factor in getting relevant results was to ensure that the servers operating environment was kept identical for each test. For this the first thing I did was carefully define what software was to be used which I broke down into categories;
With this environment setup I then created shortcuts to each of the index, topic, and thread views. This was to ensure that I was accessing each view directly so as not to incur any additional overhead from the Xoops system itself.
GATHERING THE DATA & TEST WORKFLOW
Gathering the data and inserting it into a spreadsheet was done manually, which consisted of enabling the MySQL debug block in the preferences area of the Xoops admin panel and having IBM page Detailer Basic running in the background to collect data from Internet Explorer. When I ran the test I entered the execution time and MySQL query count from the Xoops MySQL debug block, and the HTTP requests, content size and loading times from IBM Page Detailer into the relevant spot in an Excel spreadsheet I had prepared.
This is how the test workflow went;
CONSIDERATIONS & LIMITATIONS
As always, no testing process is ever 100% perfect, and this one is no exception. There are always some elements you cannot control, and always some things that don't always represent a real world environment. Below is a list of considerations and limitations of this test that I can think of. If you can think of any others, please let me know and I'll add them.