Re: FUD Question [message #658 is a reply to message #657] |
Thu, 21 February 2002 16:41 |
Ilia
Messages: 13241 Registered: January 2002
Karma:
|
Senior Member Administrator Core Developer |
|
|
B@rt wrote on Thu, 21 February 2002 11:22 AM |
The fact that so many items are stored on the filesystem instead of in the database (message bodies, user settings) scares the heck out of me. For example, it seems like each thread gets stored in /data/messages. What happens when you have more than, say, 1000 threads? Are they all stored in the same subdirectory? Or does FUD create 'buckets' like for example message 1-500, 501-1000 etc. I'm afraid that I'm not sure if our operating system (FreeBSD) can handle that.
|
FUDforum stores each thread in a file of its own and has 1 file of private messages. This is quite fast, in 90% of the cases it will be faster then MySQL because there is less overhead. On a rather old test machine running Linux we've tested to over 100,000+ individual threads and it was VERY fast. For message reading we rely on fast sequential seeks, which are heavily optimized for in any operating system. If you are using an old file system at over 100,000 threads you may see very small slowdowns, something like 100 microseconds extra per fopen call (there are 1,000,000 microseconds within a second). Also, for common threads you'll notice that the more times they are seen the faster they become, the reason being is because UNIX kernels cache the file system using the available RAM, so a commonly opened file is likely to be in this RAM cache affectively making reading from that file instant. In addition we create database views for threads, which allows you to scale to virtually limitless # of threads without taking a performance hit unlike in any other forum software today.
I am currently running FUDforum on a site with just under 50,000 messages and 1200+ threads. You can take a look for yourself at that forum at: http://www.mediaminer.org/forum/
FUDforum Core Developer
|
|
|