Amazon CTO Werner Vogels says that due to the slow rate of technology adoption, some of the problems faced by large shops like Amazon don't have solutions in commercial products, as a result Werner mentions that solutions have to be found by looking into research as well as doing a lot of in-house innovation to scale, and in this session presents some of their lessons learned which Werner says "may be important to think about when scaling your own systems." The session was recorded at QCon London, InfoQ's first conference held in March this year. We are also running another QCon in San Francisco Nov 7-9th.
Watch
Availability & Consistency (52 min).
Werner starts defining his view of scalability, and explains the needs of modern internet systems and how they are different from the ACID properties of classic distributed systems. Among others Werner also presents a number of best practices for service design: Autonomy, Asynchrony, Controlled concurrency, Controlled parallelism, Decentralize, Decompose into small well-understood building blocks, Failure tolerant, Local responsibility, Recovery Built-in, Simplicity, and Symmetry. You'll have to watch the presentation to figure out what these are. :)