产品级微服务的八大原则
本文讲的是产品级微服务的八大原则【编者的话】虽然微服务架构给开发者带来很大的自由,但是确保服务的可用性却要求对微服务进行很好的架构,运维以及组织标准。 O'Reilly这本免费的电子书《 Microservices in Production 》介绍了微服务标准化的挑战,以可用性作为微服务标准化的目标,提出了八个标准化微服务的原则,包括在整个工程组织中实现production-readiness标准的策略。 这本书的作者是 Susan J. Fowler,Uber 的 SRE(site reliability engineer),她在Uber也主要做促使Uber项目中的各个微服务达到产品级的状态,所以这本小书也是她的工作思考之作。 微服务的挑战 一般在刚开始开发应用的时候会采用单体应用的架构(monolithic)。很多应用的架构都是在公司初创的时候设计的,所以那时候追求的是“糙快猛”。随着公司的发展,应用需要扩大规模,增加更多的功能,这时候开发人员会发现他们被应用最初的架构所制约,比如语言的选择、可用的库、开发工具、回归测试工具等。对应用的重构都不得不受限于初始架构的制约。显然,初始...