Postby kanderson » Tue Sep 16, 2008 10:55 pm
Those servers won't help your issue here. Deploy them where they were intended to go initially. If they're replacing older servers, consider using the old server for SWA.
Your issue here is Disk IO, adding processors won't improve that. RAM might, but you aren't using all the RAM you have now, so lets start by fixing that.
If you could temporarily borrow one of those servers, THAT might be beneficial, build it to run Scalix, move your data to it, rebuild your server with a 64 bit OS, migrate back. That would help you out, for sure... But that's just a day or two of use. Maybe onto the temp server one weekend, back the next, that's the worst case I can think of...
If I was to order SWA servers, personally, I'd save money on the Processors, anything you can find now will be plenty, then I'd give it 4G of RAM, plus I'd mirror some little SCSI 15K disks, 36G or 73 is plenty. But I'd buy 2 of them. Mostly because an outage on 2 servers means half the consequence, and 2 will likely address the load better than a single large server. You can upgrade 1 without impacting people, etc. If it gets slow later down the line, add a third. This can be done without even rebooting your current production server, which is a big benefit. These can be 1U machines, you could even buy them used if you REALLY wanted to save on the budget. (I bought 2 for $215 each last week, and that's after splurging for a hot standby drive). Since they are all working together, and a user can connect to any server without it mattering, there's no need to pay extra for better reliability. Having 3 little ones allows a more complete failure (or scheduled downtime or whatever) than a single server. And you can include your main server in that group, if you'd like.
If it was me, I'd go in this order.
1) Make the config changes.
2) Install a 64 bit OS.
3) Add more RAM up to 6 or 8G.
4) Add a front end SWA server.
Scalix is an IO hog, there's no real way around that. IMAP connections (which SWA is) are the highest load you can put on the server. So you've loaded the server pretty heavily in your case. Adding processors will not help, that's for sure. Adding RAM is a good way to start. In order to add RAM, you need a new OS. (Changing just the Kernel doesn't completely help, though it makes it better).
Leaving more data in RAM will help, so will faster disks. Faster disks (adding more to your RAID 10) isn't possible in this box, so target RAM first.
Q&A looks like this.
1) Scalix uses Postgres to indes your messages for faster searching. By allowing that process to run only during slower periods, it's very likely that you'll have times where a search will not show results from messages that are newish. Newish might mean 30 mins, or it might mean a several hours. Either way, I'd do it. People generally use search to find a really old message. They can remember what messages they received that day.
2) I'm not sure what you mean when you say that it's using 2.5G of RAM. You said you can "see" 3G. I'd be comfortable allocating 2 of that to Tomcat. Though really, this would work MUCH better with a 64 bit OS, because as I mentioned earlier, anything above 2G is just Hocus Pocus on a 32 bit system. It doesn't REALLY work. You need 64 bit.
This thread is becoming a novel... :)
Kev.
Last edited by kanderson on Wed Sep 17, 2008 12:35 am, edited 1 time in total.