Postby jaime.pinto » Fri Nov 21, 2008 6:23 pm
This thread probably is not the best place for this feedback, since the bad performance is mostly a function of the server (not a 3rd party integration issue), and not so much the clients of scalix, such at the Notifylink server.
We also went through the process of introducing a new server, more RAM, more/faster CPU, more HD space, newer OS. We definitely got an overall improvement, but at pick times we still saw the wait time high.
As it turns out, and it's well documented on several posts, Scalix is very I/O demanding on the mail storage.
If you're using "normal" hard drivers in a mirror scenario on the server you will see performance issue.
If your OS only allows for ext3 file system, such as RH4 or RH5, you'll see performance issue.
If you're using RAID5 on slow HDs you'll see performance issues.
The solution, and the IDEAL setup, is to use a very fast SAS raid and SAS HD's (not sata), and *definitely* not ext3 FS. You should use xfs, which will determine your choice of OS, to either ubuntu, centos with special kernel, or even xandros.
In our case we are now using iSCSI file system from a very fast raid (read/write of about 280-500MB/s) on the network, over gigE ports, and we practically get over 90% of the maximum bandwidth, ie, some 100-114MB/s. Incredibly enough, we still see some less than ideal performance problems early in the morning, when several users arrive at the office. Our next step up will be to replace the gigE card with 4gigE FC or 10gigE, possibly in April. Independently of that, ext3 is the worst offender on the equation, so just throwing hardware at the problem won't do the trick. We're hoping that in the next few months redhat will start to support xfs, otherwise we'll consult with scalix on a different option for OS.
I also think that scalix could consider some sort of *hybrid* mail store structure, ie, instead of one email one file on the file system, maybe we can have as many emails as it will fit on a 1MB file, similar to a small mbox or pst, and then move on to the next chunk of a file. Scalix performance is away more sensitive to the number of individual emails, in particular in the inbox, than to the size of the emails themselves. Apparently the number of calendar entries play a big role as well. As soon as a user logs in, the inbox and calendar are the first folders that get scanned and indexed. If a user keeps 2000 emails in the inbox and 1 full year of active calendar entries to be upgraded, there it goes your performance.
On the notifylink side, you need to determine how often you are setting up your users to push/pull information to/from the scalix server. If you have it set to 1 minute or 2 minutes then you're expecting too much. You'll be piling up update instructions on both the scalix and the Notifylink servers, and they won't be able to keep up. We have ours set to 5-8 minutes depending on the user, and this seems a good compromise.
Jaime||||||||||||||||||||||||||||||||||||||||