• What states the CAP Theorem?
    • Consistency

      • Every read receives the most recent write or an error.
      • If you update a piece of data in the system, any subsequent access to that data will always return the updated value, ensuring that all users see the same data at the same time.
    • Availability

      • Every request receives a (non-error) response, without the guarantee that it contains the most recent write.
      • The system is always up and running, and every request is answered, but you might not always get the latest data.
    • Partition (Outage) Tolerance

      • The system continues to operate despite an arbitrary number of messages being dropped (or delayed) by the network between nodes.
      • Even if there's a problem in the network and some parts of the system can't talk to each other, the system as a whole still works.
    • You can pick two

    • In distributed systems, where the system should work even if a part of it fails (must-P), you can peek between availability and consistency. And you normally would take availiability for normal web

      Untitled

    • Examples for CAP:

      • Domain Name System (DNS): A, P
        • Availability and Patition Tolerance very good, but can be inconsistent
      • Relational database systems: C, A
        • Partitioning is tolerated e.g. due to transaction journals
      • Banking applications: C, P
        • Consistency is the most important aspect, even with severe communication failures