微服务学习资料汇总

最近微服务在社区中逐步流行起来,微服务是用一组小而专的服务来构建一个应用,服务独立运行在不同的进程中,服务之间通过轻量的通讯机制来交互,并且服务可以通过自动化部署方式独立部署。微服务的核心理念是将大型、复杂的应用分解为小且内聚的服务,这些小的服务便于扩展和部署,他们可以简单的和当下流行的Docker、DevOps、云计算联系起来。 下面是关于微服务的一些优秀的学习资料:

  1. 微服务的定义

    • Martin Fowler的《微服务》是第一篇详细介绍微服务的文章。文中对微服务进行了定义,并与传统的整理式的架构进行了对比,阐述了微服务的优势。但是文章并没有对微服务进行精确定义,也没有深入剖析,所以在社区中引起了广泛讨论,Hacker News上的评论就相当精彩。部分中文翻译可以参考此文。
    • James是一位资深开发工程师,他的博文《微服务架构》图文并茂的从通信、测试、监控、管理等方面对微服务进行了解析。文章同样也强调了运维的重要性。
    • David的微服务系列文章介绍了微服务的概念、微服务的使用场景、微服务不适合的场景以及微服务架构下系统的测试方法。
  2. 实践经验

    • Rinat的文章总结了自己在实际项目中使用微服务架构的经验,并着重解释了很多人怀疑的性能问题。Rinat的文中提到的系统是一个不错的学习案例。
    • 微服务是由多个小而专的服务组成的,小的服务是如何界定的?Chris在文章《微服务:更小更多的服务?》中谈了谈自己的看法。
    • Toby的PPT重点介绍了微服务架构中可选的几种测试方案,比如单元测试、端对端测试、容器测试等。
    • Jeppe的PPT介绍了目前的SOA架构在实际生产中面临的一些问题,并介绍了基于SOA和事件驱动的新架构SOA 2.0,其实想法和微服务架构大相径庭。
    • Michael的PPT微服务与函数式编程相结合的一些经验。
    • SoundCloud在是如何从传统架构演进到微服务架构的。
    • Docker微容器+微服务将颠覆传统的软件架构,微容器+微服务的一大创新是将SOA和云计算完美无缝结合在一起。
    • 亚马逊的微服务架构使用经验。
  3. 微服务的短板

    • Benjamin Wootton的文章《微服务架构——不是免费的午餐》从运营、DevOps、接口、分布式、异步、测试等方面解释了微服务架构的种种弊端,作者认为如果使用微服务架构需要考虑它的成本以及挑战。
    • InfoQ中文站的文章《有关微服务架构的争论:更简单还是更复杂?》对微服务的优缺点进行了全面的分析,作者认为微服务是顺应PaaS、持续交付、DevOps等新技术理念下的产物,虽然还有一些短板,但微服务应该是大的趋势。
    • 《微服务与SOA》在SOA的角度介绍了微服务,文章认为微服务并不是什么新鲜的东西,而只是SOA的另一个叫法。
  4. 视频资料

    • 微服务:Java,用Unix的方式
    • 微服务架构
    • 微服务的真实样子
    • 微服务的服务应该多大?
    • 微服务社区
    • 分解应用以实现可部署性和可扩展性

微服务的倡导者认为开发团队应该负责产品的整个生命周期,正如最近经常提到的理念“ You Build It, You Run It”。微服务的核心思想与目前的技术潮流相吻合,相信它是一个大的趋势。InfoQ中文站一直在推动微服务架构在国内的普及以及发展,如果您有微服务相关的文章,欢迎投稿。

你可能感兴趣的:(微服务学习资料汇总)