Search code examples
c#azureasp.net-core-2.1core-api

Best way to store files on a large scale enterprise level application


I have a question on Azure environment setup and file storage.

We are currently developing a CRM as part of a large scale project. Currently, the CRM is reading a mailbox and creating tickets in the system from those emails. There could be around 5000 - 10,000 (could be more overtime) emails coming through everyday and will contain attachments. At the moment I'm just using a folder on the application root path to store all the attachments plus any images on the email body.

The application is hosted on Azure AppServices.

My question is, is this the best way to store all these files, images, video files, etc.. or should I really consider storing them on blob storage or some other third part storage solution?


Solution

  • One thing to note about Azure App Service is each tier (Shared, Basic, Standard ...) has a storage quota. If you are storing your files on a root path (wwwroot), you will reach your quota soon and your application will stop.

    You have to change that to move your files into Azure Blob Storage.

    You can decide the storage tier (Hot vs Cold) depending on how frequently you access these files (that is a cost thing)

    If you need these files on-premise then maybe you can use Azure Files instead of Blob Storage.