For more complex and loaded applications, it is worth to centralize your shared data within a single container to get more simple and flexible exports’ management (including access permission control - e.g. read-only for one node type and read-write for another).
In confines of Jelastic, a Shared Storage Container is recommended to be used for sharing files across multiple layers or even environments of a single account. It is specially optimized for data storing (i.e. is focused on performance and provides the enlarged disk space amount).
Apart of that, upon using a separate data Storage container, you get the following benefits:
- Since storage here represents an independent container, its occasional high loading can be properly handled without influence on general app’s performance (as it might happen during load peaks in case a single node fulfils several “roles”).
- Upon the necessity, you can painlessly remove everything except the required data (i.e. leaving just a storage being included to environment) and start over with your project from the scratch. Herewith, the majority of common environment settings (e.g. internal domain and sharing permissions) will be left unchanged, which highly simplifies project re-integration.
- Storing data apart makes it easier to handle several project clones (i.e. environments), dedicated for different app lifecycle stages (e.g. separate ones for development, testing and production).
Mount folder with your DB’s scheduled backups to your storage container for making backups automatically kept on the remote server and, in such a way, improve the overall data safety during software upgrades.
In addition to actually data storing, such a structure can be also efficiently utilized in case you need to share some common configuration files, that are to be used by nodes on different layers and/or environments.
Herewith, your Jelastic Shared Storage Container can be also used as an external storage, i.e. you can expose data from it out of the Platform for being available over the Internet.
In such a way, you can share some content for the required third-party service or another developer (providing him with personal access permissions) or, generally, get a quick access to your data from any point with the Jelastic-hosted NFS server.
By using this option, you can even build your own intercloud sharing solution and/or operate with the same data from different Jelastic installations - find out the required NFS server configurations for such an implementation within the linked doc.