Friday, August 11, 2006

Evolution Exchange Connector

A new feather got added to my cap of responsibilities w.r.t evolution, viz., Exchange connector - one of the distinguishing features of mighty Evolution. My responsibilities for Exchange connector ranges from fixing some critical customer issues to performance, scalability and stability of the module. One of the key problems with exchange module is performance. Initial loading of folders takes huge amount of time as compared to IMAP/POP/GW. After reading through quite a lot of tutorials and blogs, I came across Federico's blog about how strace can be helpfull for profiling with minimum coding.

Took the sample code from Federico's blog and extended it a little bit to have different levels to avoid too many messages and included thread-ids to group the messages. I have also customized the plot-timeline script to group by thread-id. Will upload the patch and the graph, generated by the script, later.

1 comment:

DRC_CTO said...

I was wondering if I can use the "connector" to exchange to reroute all encryption requests to reconfigurable hardware. Also I'm wonder if you think some functions can be accelerated using hardware.

For example maybe all mail folders are compressed on disk and in memory and the hardware does all compression management?

Steve Casselman, CTO DRC Computer