Difference between revisions of "Hardware Specifications"
Line 1: | Line 1: | ||
Here's what our database servers for our Hosted CanIt service look like: | Here's what our database servers for our Hosted CanIt service look like: | ||
− | Disk | + | ===Disk=== |
− | |||
We have sixteen 10k RPM SATA drives arranged using Linux Software | We have sixteen 10k RPM SATA drives arranged using Linux Software | ||
RAID-10 with the "offset" strategy. This is described here: | RAID-10 with the "offset" strategy. This is described here: | ||
Line 18: | Line 17: | ||
7 million messages/day and the database server is nowhere near IO-saturated. | 7 million messages/day and the database server is nowhere near IO-saturated. | ||
− | RAM | + | ===RAM=== |
− | |||
Our database servers have 256GB of RAM each. I recommend putting as | Our database servers have 256GB of RAM each. I recommend putting as | ||
much RAM as possible into the system; you want all of the small tables | much RAM as possible into the system; you want all of the small tables | ||
Line 25: | Line 23: | ||
RAM for best performance. | RAM for best performance. | ||
− | CPU | + | ===CPU=== |
− | |||
Our database servers have two physical processors: | Our database servers have two physical processors: | ||
Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz | Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz |
Revision as of 15:20, 24 June 2014
Here's what our database servers for our Hosted CanIt service look like:
Disk
We have sixteen 10k RPM SATA drives arranged using Linux Software RAID-10 with the "offset" strategy. This is described here: http://www.ilsistemista.net/index.php/linux-a-unix/35-linux-software-raid-10-layouts-performance-near-far-and-offset-benchmark-analysis.html
The sixteen disks are arranged conceptually as eight stripes with each stripe being a RAID-1 pair; this gives us (theoretically) 16x read performance and 8x write performance compared to a single disk; actual measurements show that the performance improvement is quite close to what the theory says.
We considered using SSDs for the database server, but I am still not completely comfortable with their reliability and for us, at least, spinning disks still work fine. Our hosted service peaks at about 7 million messages/day and the database server is nowhere near IO-saturated.
RAM
Our database servers have 256GB of RAM each. I recommend putting as much RAM as possible into the system; you want all of the small tables such as sender rules, user-lookup settings, etc. to wind up cached in RAM for best performance.
CPU
Our database servers have two physical processors: Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz
Each processor has six cores and each core has hyperthreading, so cat /proc/cpuinfo reports 24 processors. That seems to be plenty of CPU for our needs.
The database servers configured as above cost us $10 000 each. We use SuperMicro hardware; brand-name hardware like HP or Dell will probably be a bit more expensive.