According to several wiki documents, real load balancing (multiple servers can manage the same mailbox with a central datapool) is not possible with Zimbra, since transactions are very IO bound and thus the mailboxes are tied to a certain Zimbra server.
In our existing setup we use nginx, which performs the login for IMAP and POP3, connects to the according backend of the mailbox and is just proxying the further requests and responses during IMAP and POP3 sessions. So far, we could retain this for Zimbra.
But with Zimbra, there is also the AJAX frontend, and I have no idea how to load balance it. To balance the load, the frontend would have to know to which backend to connect. It cannot know this before the login is done. But the login screen is provided by the Zimbra server.
So how can I setup up a central zimbra frontend URL like https://zimbra.my-isp.com which hides the real backends (like zmserver1, zimserver2 etc.) from the customer? This isn't only interesting for the AJAX frontend, but also for WebDav.