《Docker微服务架构实战》| 每日读本书

简介: 深入解析微服务、容器技术、Service Mesh等技术原理,帮助读者快速建立微服务生态圈的全局知识体系。每日搜罗最具权威专业书籍,更多图书请关注“每日读本书”。

编辑推荐

1.内容丰富,清晰讲解了架构演进过程、Service Mesh技术原理、Docker技术原理、Docker与DevOps整合等要点,深入浅出前沿技术。

2.融合了作者在中小型企业推广微服务和Docker的亲身经验,适合中小型企业从业者阅读、学习,让小公司也能玩转大项目。

3.理论结合实战,触达微服务和容器领域的热门技术与清晰工程实践流程,带你快速建立为服务生态圈的全局知识体系。

test
蒋彪 著

内容提要

微服务与Docker是近年来分布式大规模服务架构中两个主流的技术趋势,《Docker微服务架构实战》主要介绍中小型企业在架构落地过程中柔性地切入微服务和Docker虚拟化的各种方法。

《Docker微服务架构实战》主要介绍了微服务架构的各种技术选型、微服务拆分的各项原则、传统应用向微服务架构过渡的方法论、Docker技术原理、Docker跨主机通信选型、Docker与DevOps的整合方法等要点,同时简单介绍了利用Rancher搭建Docker容器云平台的快速解决方案,非常适合云计算从业人员阅读、学习。

作者简介

蒋彪
苏宁易购高级架构师。2006年至今,历任程序员、技术经理、架构师、高级架构师等职,具有十余年研发及技术管理工作经验。早年在日本参与过みずほ银行(瑞穂实业银行)内部精算系统重构项目,以及东京证券交易所新一代交易系统研发项目,回国后主持过江苏三六五网、麦芽金服、苏宁易购等公司的大型高并发互联网架构工作。主要技术领域是微服务设计、容器化部署、容器云计算、DevOps方法论、AIOps模型实战。

精彩导读

前言

Docker与微服务是什么
到底什么是架构师?一名架构师的职责应该是什么?
很多年前,我作为一名架构初学者,便了解了架构师要做的事情。从方法论上来看,就是“识别利益相关者”“梳理各个层次的利益传递”和“根据利益线索设计有伸缩性的架构”。

同样,以架构师的视角来看,到底什么是微服务呢?作为架构师,我所看到的微服务,是在团队人数井喷,产品迭代周期太快,系统中的技术负债过剩导致不能将鸡蛋放到同一个摇摇欲坠的篮子,投资人对产品功能特性提出夸张、多变要求的大背景下,在投资人、经理层、研发人员、测试人员、运维人员等各个利益相关者的逼迫下,被迫地将系统从并发、扩展、易维护等维度进行的拆分。

按照微服务的思想将系统拆分之后,我们发现,拆分得越厉害,系统的信息熵就越大,因此有了系统的拆分,就要有拆分之后的治理。

比如,如何保证拆分之后应用的注册发现?如何保证拆分之后服务的熔断限流监控?如何保证服务之间底层通信的可靠性和序列化?

为此,各种各样的服务治理以及分布式服务协同框架便出现了。

那么是不是有了微服务的拆分再加上微服务的治理就足够了呢?对于开发人员而言也许足够了,但是对于运维人员而言,远远不够。拆分使得系统的健壮性大大提高,但是也使系统的发布和运维异常复杂。试想一下,如何在一个分布式的环境下令几万个微服务快速启停?如何实现几万个微服务的管理、编排与自动扩容?

为了解决这些问题,Docker以及与Docker关联的各种容器编排技术便出现了。

因此,如果我们站在终点回望起点,就会知道为什么会有微服务,又为什么会有Docker,乃至为什么会有今天的Service Mesh。我们可以说,这些技术的产生一脉相承,它们的根本目的都是解决系统复杂度井喷之后的系统架构问题;从学术上来说,这些技术都是在和复杂分布式架构中的信息熵进行对抗;从工程上来说,这些技术是当今时代背景催生出的必然产物。

为什么写此书

作为一名技术人员,比起知道技术的用法,更重要的是要知道如何使这项技术切合公司现有的技术栈、业务线,如何解决公司的痛点,如何在各个部门的协同下将技术实际落地。

一项技术再好,再优秀,在实际落地中也要“削足适履”,要根据公司的产品线走,跟着公司的技术现状确定如何应用。毕竟绝大多数公司的第一要务是生存与盈利,能够专职供养一支底层研究技术团队的公司少之又少,更何况是对Docker这样的“底之又底”的技术栈。

对于一名架构师而言,当你决定引入Docker的时候,你要知道,你在公司内引入的不是一个简单的技术框架、一个中间件、一个自动化工具,而是一种思想、一个云平台、一个新的开发习惯。

对于Docker的引入,从入门到落地,需要架构师、运维工程师、网络工程师、研发人员、测试工程师,乃至公司高层的全面支持和协作。把Docker用到极致,就是在建设自己的云平台和PaaS,对于这种体量的研究,若没有一个全面的规划和路线图是无法完成的。
同时,对于Docker的引入者而言,需要学习包括Docker底层的原理、Docker的网络模型、Docker的容器隔离、Docker下的自动发布与自动运维,乃至常被很多人挂在嘴边的Docker容器编排、Docker与微服务、Docker与DevOps在内的方方面面的知识。

上述所有的知识,若能够集中在一个人身上,实在是难得。毕竟,在IT行业,每个人都有自己的知识短板。

甚至我可以负责任地说,在很多公司中,若想找到一支能够搞定底层到上层方方面面建设的专业团队,都是很困难的。

举个例子,我见过很多Docker实际应用的场景,在一些中型场景中,通常直接用bridge端口来转发通信,为什么会这样?因为很多公司虽然不缺少优秀的程序员,但是缺少网络方面的架构师,不懂也不敢尝试复杂的网络模式。再比如,我亲眼见到有的项目在落地的时候,采用Docker挂载卷轴的方式发布代码,为什么?因为这些公司缺少专门的人来维护CI/CD平台。

正是因为有这些困难,所以笔者将自己在中小型企业中推广微服务和Docker的亲身经历和亲眼所见总结出来,从技术选型和架构切入的层面进行梳理,希望通过这本书将这些好的经验传递给需要的读者,帮助更多的人。


积跬步以至千里。每天读本书,为您搜罗最具权威专业书籍,更多图书推荐请关注每日读书

好知识需要分享,如您有喜欢的书籍想与广大开发者分享,请在文章下方评论留言,我们将为大家推荐您的爱书!

相关文章
|
7月前
|
弹性计算 关系型数据库 微服务
基于 Docker 与 Kubernetes(K3s)的微服务:阿里云生产环境扩容实践
在微服务架构中,如何实现“稳定扩容”与“成本可控”是企业面临的核心挑战。本文结合 Python FastAPI 微服务实战,详解如何基于阿里云基础设施,利用 Docker 封装服务、K3s 实现容器编排,构建生产级微服务架构。内容涵盖容器构建、集群部署、自动扩缩容、可观测性等关键环节,适配阿里云资源特性与服务生态,助力企业打造低成本、高可靠、易扩展的微服务解决方案。
2175 10
|
8月前
|
人工智能 监控 前端开发
支付宝 AI 出行助手高效研发指南:4 人团队的架构迁移与提效实战
支付宝「AI 出行助手」是一款集成公交、地铁、火车票、机票、打车等多项功能的智能出行产品。
1241 21
支付宝 AI 出行助手高效研发指南:4 人团队的架构迁移与提效实战
|
8月前
|
监控 Java API
Spring Boot 3.2 结合 Spring Cloud 微服务架构实操指南 现代分布式应用系统构建实战教程
Spring Boot 3.2 + Spring Cloud 2023.0 微服务架构实践摘要 本文基于Spring Boot 3.2.5和Spring Cloud 2023.0.1最新稳定版本,演示现代微服务架构的构建过程。主要内容包括: 技术栈选择:采用Spring Cloud Netflix Eureka 4.1.0作为服务注册中心,Resilience4j 2.1.0替代Hystrix实现熔断机制,配合OpenFeign和Gateway等组件。 核心实操步骤: 搭建Eureka注册中心服务 构建商品
1231 3
|
6月前
|
监控 Kubernetes 安全
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
蒋星熠Jaxonic,技术探索者,以代码为笔,在二进制星河中书写极客诗篇。专注Docker与容器化实践,分享从入门到企业级应用的深度经验,助力开发者乘风破浪,驶向云原生新世界。
706 51
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
|
8月前
|
消息中间件 Java 数据库
Java 基于 DDD 分层架构实战从基础到精通最新实操全流程指南
本文详解基于Java的领域驱动设计(DDD)分层架构实战,结合Spring Boot 3.x、Spring Data JPA 3.x等最新技术栈,通过电商订单系统案例展示如何构建清晰、可维护的微服务架构。内容涵盖项目结构设计、各层实现细节及关键技术点,助力开发者掌握DDD在复杂业务系统中的应用。
1505 0
|
6月前
|
Cloud Native Serverless API
微服务架构实战指南:从单体应用到云原生的蜕变之路
🌟蒋星熠Jaxonic,代码为舟的星际旅人。深耕微服务架构,擅以DDD拆分服务、构建高可用通信与治理体系。分享从单体到云原生的实战经验,探索技术演进的无限可能。
微服务架构实战指南:从单体应用到云原生的蜕变之路
|
6月前
|
监控 Cloud Native Java
Spring Boot 3.x 微服务架构实战指南
🌟蒋星熠Jaxonic,技术宇宙中的星际旅人。深耕Spring Boot 3.x与微服务架构,探索云原生、性能优化与高可用系统设计。以代码为笔,在二进制星河中谱写极客诗篇。关注我,共赴技术星辰大海!(238字)
1112 2
Spring Boot 3.x 微服务架构实战指南
|
7月前
|
消息中间件 数据采集 NoSQL
秒级行情推送系统实战:从触发、采集到入库的端到端架构
本文设计了一套秒级实时行情推送系统,涵盖触发、采集、缓冲、入库与推送五层架构,结合动态代理IP、Kafka/Redis缓冲及WebSocket推送,实现金融数据低延迟、高并发处理,适用于股票、数字货币等实时行情场景。
1025 3
秒级行情推送系统实战:从触发、采集到入库的端到端架构
|
6月前
|
Java Linux 虚拟化
【Docker】(1)Docker的概述与架构,手把手带你安装Docker,云原生路上不可缺少的一门技术!
1. Docker简介 1.1 Docker是什么 为什么docker会出现? 假定您在开发一款平台项目,您的开发环境具有特定的配置。其他开发人员身处的环境配置也各有不同。 您正在开发的应用依赖于您当前的配置且还要依赖于某些配置文件。 您的企业还拥有标准化的测试和生产环境,且具有自身的配置和一系列支持文件。 **要求:**希望尽可能多在本地模拟这些环境而不产生重新创建服务器环境的开销 问题: 要如何确保应用能够在这些环境中运行和通过质量检测? 在部署过程中不出现令人头疼的版本、配置问题 无需重新编写代码和进行故障修复
542 2