4 ms·
Even if it supported saving and coming back later, that barely complicates things. The form itself would need the ability to redisplay with fields pre-populated
by DougWebb 10y ago
Even if it supported saving and coming back later, that barely complicates things. The form itself would need the ability to redisplay with fields pre-populated, which you'd want anyway if you've got any server-side validation or to handle submit errors with an option to retry.
For the database, you'd want to use caching. When the form is submitted you write the data locally and queue it for replication to a central server. To redisplay you'd try to read it locally and if you don't find it you'd read from the central server. You'd probably want to use the household's code for sharding so that you're going to the same local database each time.
I can't imagine it'd be necessary to spread the load out geographically. I'd have a single datacenter / cloud equivalent set up with load-balanced machines for the front end and the database tier, a full fail-over backup in case of critical failure of the main datacenter, and a separate database server for the master which the others replicate to and clone from.
This is a six-figure project, for sure, except maybe for time spent dealing with governmental red-tape.