Discussion of trade off between having modular design which is easy to test difference module independencely , verse have big testable context that able to write test for all module - http://blog.objectmentor.com/articles/2007/06/11/collateral-effort-revisited Discussion of trade off between performance and consistent about distributed system - http://www.allthingsdistributed.com/2008/12/eventually_consistent.html http://www.infoq.com/news/2008/03/ebaybase http://www.infoq.com/news/2009/01/EventuallyConsistent, Discussion about good thing and bad thing for blocking method - http://javarevisited.blogspot.com/2012/02/what-is-blocking-methods-in-java-and.html#more