Если стоит вопрос хранения файлов в GridFS, значит есть потребность в облачном хранении и своевременном изменении файла/файлов в облаке, а так же контролируемая файловое хранилище (например вести счетчик использования файла в самом документе в gridfs и удалять при его обнулении). Только в этом случае имеет смысл задуматься о gridfs. Конечно, если использовать в лоб GridFS то потери производительности будут, и чем больше запросов и больше файлов тем больше просадка по производительности. Есть несколько вариантов более-менее производительные решения, но их вся суть сводиться: GridFS — (gridfs-fuse) --> disk0 — (rsync) --> disk1 — (rsync) --> disk2 — … (возможны параллельнык rsync) или GridFS — (gridfs-fuse) --> disk0 — (drbd) --> disk1, disk2,… или их комбинации.