Upload/Download performance issue on Rocket.Chat 7.9.3 (Docker + Mongo 8.0.4)

Hello Rocket.Chat community,

We are experiencing very long upload times on our self-hosted Rocket.Chat instance, while download times remain short and stable.
This problem persists regardless of the channel depth in the workspace tree.

:wrench: Environment

  • Rocket.Chat Version: 7.9.3

  • Deployment: Docker

  • MongoDB Version: 8.0.4 (wiredTiger, replica set rs0)

  • Server resources: 31 GB RAM, Docker environment

  • User environment: PC Windows 10 Pro (22H2)

  • Network: Débit montant (91.35 Mbps)

:bar_chart: Test results

We performed multiple tests with different files (PDF, PNG, JPG) and in different channels, at various depths of the workspace tree (from 13.3 down to 13.3.4).

  • Uploads are very slow: from 6s to 30s for files between 129 KB and 5 MB.

  • Downloads are always fast: around 5 seconds or less, regardless of file size or channel depth.

  • The difference between shallow (13.3) and deep (13.3.4) channels is negligible → the issue seems global to the server rather than related to channel depth.


:red_question_mark: Question

Is this a known issue with Rocket.Chat 7.9.3 or with the file upload mechanism ?

  • Could this be related to MongoDB performance, or should we configure an external file storage (S3, MinIO, etc.)?

  • Are there any tuning recommendations for handling uploads more efficiently?

Any help, feedback, or guidance would be greatly appreciated :folded_hands:

Thanks in advance,

Yup.

Yup.

Always read the docs first.

Note this has been stated multiple times before.

By default, GridFS is used in Rocket.Chat for file storage because MongoDB offers this functionality with zero configuration.

However, it is not recommended for production environments due to the high load it places on the database.

Note their emphasis.