>> Finally, if you are working under weak consistency, it is also worth noting that it is not a matter of picking just a single strategy. Depending on the context, the application layer can choose a different set of requirements for each data object!<p>This is the part that is the most important. You don't have to try to pigeonhole your application to fit into CA, CP or AP. You can say things like "writes to the user's profile must propagate everywhere instantly" or "status updates can appear a little late, no biggie.". You have significant flexibility in the amount of consistency you impose on a per query basis.