I have the following setup:
- 1+ clustered instances of a client serving (custom web) application
- 1 instance of a system serving web application that deploys large (100 MB) files used by the application above, but doesn't happen very often (a few times a week). It has the final say on what files should be in the file system.
The client instances only need to share (have up-to-date) files deployed by the other app. They don't have session management or other shared resources. What is the best, ie. manageable and fail-safe, way to deploy files so that each instance has access to them.
My current proposal is to have the system application deploy the files to each clustered instance (haven't decided ftp, nfs, http, or other protocol). The clustered instances can also periodically sync with the deployment application to check for modified resources. This config has everything kind of coupled and I'd like to decouple at least one way, so maybe the clustered instance doesn't know anything about it's file system being overwritten every once in a while.
If you have library solutions, I'll hear you out, but I'm rather looking for config solutions, how the servers interact.