Hello Sief,I believe I'm the original author of this particular section of the documentation.
I take it as a compliment that you've read what I've written, and follow-through with additional questions! Much appreciated indeed.
It's been a while though, please bear with me.The principle I would adhere to generally, is that remote (or worse, distributed) filesystems are typically poor for "many, many small files" such as an email spool.
For remote filesystems (such as NFS), the major concerns are protocol overhead, superfluous access control, lack of in-memory buffer and slab cache, the context switching implicit to using NFS, and finally the "lookup penalty" (^1).
For distributed filesystems this gets even worse for "many, many small files" such as an email spool, but I understand that's not your question.
We've done an experiment almost a decade ago, in creating a large image file on the remote storage (i.e. a 1.5TB mailspool.img) and then loop-mounted it on the Cyrus IMAP backend node. In light of what I've mentioned before, 99 problems but NFS ain't one.
I hope this helps provide a bit of insight on the article, Kind regards, -- Jeroen^1: Imagine a "modern" PHP application with an NFS-mounted web-root. The include path alone would cause so many attempts to `stat()` that before the page renders, your servers get bogged down. This is just to illustrate remote filesystems are not suitable for "many, many small files" even though of course a mail spool is not subject to anywhere near the same dynamics.
On 9/4/26 12:18, [email protected] wrote:
Dear,I am reaching out regarding the storage documentation for Cyrus IMAP (https://www.cyrusimap.org/3.12/imap/concepts/deployment/storage.html <https://www.cyrusimap.org/3.12/imap/concepts/deployment/storage.html>), specifically the note stating that "the use of NFS is considered harmful."I have two questions regarding this restriction:1. Does this recommendation apply to high-performance enterprise storage systems (such as NetApp or Hitachi) operating in an active/ passive architecture with a mail proxy directing requests to a single Cyrus server to prevent concurrent mailbox access?2. Does the restriction apply to all data types, or specifically to metadata (e.g., headers and indexes)? Would it be supported to store metadata on local disks while hosting email bodies and attachments on a NAS via NFS?Thank you for your time and assistance. Sincerely, Seif Khalifa*Cyrus <https://cyrus.topicbox.com/latest>* / Info / see discussions <https://cyrus.topicbox.com/groups/info> + participants <https:// cyrus.topicbox.com/groups/info/members> + delivery options <https:// cyrus.topicbox.com/groups/info/subscription> Permalink <https:// cyrus.topicbox.com/groups/info/Tcf711fc6f0ce8498-M5e82c627fba78f8ace22ee7d>
OpenPGP_signature.asc
Description: OpenPGP digital signature
<<< multipart/mixed; boundary=------------kbUU1smZTcFJOyr8cgUa9as1; hp=clear; protected-headers=v1; boundary="----------=_1789682853-6022-1"; charset="UTF-8": Unrecognized >>>
