Why is WebMail better?
ben.bucksch at beonex.com
Wed Dec 16 06:55:21 UTC 2015
Phillip Hallam-Baker wrote on 11.12.2015 19:21:
> The IMAP protocol is slow because it is poorly designed. It is single
> threaded with every transaction requiring a separate request/response.
> So one big file causes everything to jam up. Sorting of messages takes
> place in the client and the changes are uploaded back to the server.
> Gmail also optimizes the user experience by separating out metadata
> downloads from content and message data from attachments. Their
> protocol is S/MIME aware while IMAP is not.
> These are all fixable.
I'd like to correct some mis-information above.
1. Thunderbird's IMAP implementation is multi-threaded. (In fact, it's
pretty much the only multi-threaded thing in all of TB, if I
2. The protocol itself is asynchronous. You can issue several commands
at (almost) the same time, and the second can finish before the
first. This is basically the same concept that node.js follows,
which is very fast and modern. IMAP had this 20 years ago, on a
(Thunderbird additionally uses one thread and connection per folder.
I don't remember whether TB uses the async nature of IMAP very much.)
3. IMAP does separate metadata from content. For that purposes, it
parses email messages on the server, and can return the headers of
an email separately from the body, and the body separate from the
attachments. That, too, was very modern for its time.
4. IMAP and Thunderbird are blazingly fast on my machine here. The
folder with my primary work project has currently about 15000
emails, and is sufficiently fast. QuickSearch in TB is almost
instant, it takes about 1s to search the whole folder for a subject.
(Admittedly, my IMAP server is on my local network. Maybe the
slowness you encounter might be attributed to a slow IMAP server or
a slow desktop machine?)
TB has serious problems, no doubt. But they are not those you mentioned.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the tb-planning