This link has been bookmarked by 4 people . It was first bookmarked on 18 Sep 2006, by morrita.
-
26 Jun 08
-
- You know your distributed systems theory: You know about logical time, snapshots, stability, message ordering, but also acid and multi-level transactions. You have heard about the FLP impossibility argument. You know why failure detectors can solve it (but you do not have to remember which one diamond-w was). You have at least once tried to understand Paxos by reading the original paper.
- You have a good sense for distributed systems practice: You can reason about churn and locality in DHTs. You intuitively know when to apply ordered communication and when to use transactions. You can reason about data consistency in a system where hundreds of nodes are geographically distributed. You know why for example autonomy and symmetry are important properties for distributed systems design. You like the elegance of systems based on epidemic techniques.
-
- You have good common sense about scale and availability: You frown when someone mentions two-phase commit in the same sentence as high-availability. You also realize that protocols that require a system "to be stable for a sufficiently long period of time" are not a good basis for building real systems. You understand the elegance of of state-machine replication, but understand why it is hard to apply at large scale. You have a solid intuition about the impact of design decisions on the ability to achieve data consistency, and you are not scared by the idea of building systems based on 'eventually consistent' data.
- Some of your heroes have actually built real systems: Worshipping Dijkstra and Lamport is OK as long you also know why Jim Gray and Bruce Lindsay deserve a red carpet. You dream about how much smarter you would become if only Pat Helland would go back to writing on his weblog.
- You have actually built some real systems yourself. At work or at school, you must have faced some real hard distributed problems and solved them. You are involved in an open-source project that has solid distributed systems components.
-
-
18 Sep 06
Would you like to comment?
Join Diigo for a free account, or sign in if you are already a member.