4 ms·
However, I do think the general consensus is that stateless/shared-nothing app servers and following something like the 12 Factor App[1] pattern makes things mu
by jdc 9y ago
However, I do think the general consensus is that stateless/shared-nothing app servers and following something like the 12 Factor App[1] pattern makes things much easier.
1. https://12factor.net https://12factor.net
- saryant 9y agoYes, it does. But just because your storage layer is abstracted behind an API doesn't mean eventual consistency isn't your concern. Take S3 for example. LIST calls lag deletes but exists() doesn't, so exists() could return 404 for a document that's still included in the result of LIST. Plus, all exists() calls go through a caching load-balancer, so you could receive different answers in two subsequent exists() calls. That's just a small subset. There's a good comment here[1] on S3's consistency semantics. Point is, 12FA makes things easier but any time you have more than one computer involved (i.e, always), consistency becomes complicated. [1] https://issues.apache.org/jira/browse/FLINK-5706 https://issues.apache.org/jira/browse/FLINK-5706
- zip1234 9y agoSeems like when cache needs to get involved, things can get complicated very quickly.
- dmoy 9y agoOne of the two hard problems...
- hamandcheese 9y agoI don't really see how your example applies to the point the root comment made. S3 surely _is_ a distributed system, but he is specifically talking about data residing on _one_ machine (notwithstanding the bits about read only followers).