An introduction to distributed systems (2017)
This is a great outline. Martin Kleppmann's Designing Data Intensive Applications [0] is very much in the same domain as what's in these notes.Speaking about scale and distributed systems: AWS specific resources I find interesting from their EdgeEngineering/NetEng teams (I haven't seen many other service teams in AWS openly share as much about design as them):- https://aws.amazon.com/blogs/architecture/category/networkin... series of articles on Route53's 100% data-plane availability architecture [1].- https://www.youtube.com/watch?v=O8xLxNje30M colmmacc [2] (seems to be the eng behind AWS HyperPlane [3][4]?) on 10 design patterns for building resilient systems.- https://www.youtube.com/watch?v=swQbA4zub20 Peter Vosshall (co-creator of Dynamo [5]) presenting "cell-based" design in-use at AWS.----[0] https://dataintensive.net/[1] https://www.slideshare.net/AmazonWebServices/under-the-hood-...[2] https://news.ycombinator.com/user?id=colmmacc[3] https://atscaleconference.com/videos/networking-scale-2018-l...[4] https://www.youtube.com/watch?v=dfEcd3zqPOA&feature=youtu.be...[5]  Decandia, G.; Hastorun, D.; Jampani, M.; Kakulapati, G.; Lakshman, A.; Pilchin, A.; Sivasubramanian, S.; Vosshall, P.; Vogels, W. (2007). "Dynamo: Amazon's Highly Available Key-value Store".[6] Bonus: The SRE Book https://landing.google.com/sre/sre-book/toc/index.html