网站首页  软件下载  游戏下载  翻译软件  电子书下载  电影下载  电视剧下载  教程攻略

请输入您要查询的图书:

 

书名 持续演进的Cloud Native(云原生架构下微服务最佳实践)
分类
作者 王启军
出版社 电子工业出版社
下载
简介
内容推荐
《持续演进的Cloud Native》从架构、研发流程、团队文化三个角度详细介绍了如何构建Cloud Native。作者王启军长期活跃在研发一线,具有丰富的架构设计经验,也曾亲身经历过很多失败的架构设计,如很多团队在实施微服务架构的时候,只强调拆分服务,根本没有理解微服务架构应该怎么做。《持续演进的Cloud Native》就是想告诉读者,除了拆分服务,还要把哪些事做好,例如基础设施、一致性、性能、研发流程、团队文化等。
《持续演进的Cloud Native》共分为10 章,第1 章从整体上描述了Cloud Native 的起源、组成及原则等;从第2 章到第7 章重点描述了微服务架构、敏捷基础设施及公共基础服务、可用性、可扩展性、性能、一致性等方面的设计实践;第8 章介绍了Serverless 和Service Mesh;第9 章介绍了如何构建研发流程;第10 章介绍了如何建设团队文化。
《持续演进的Cloud Native》希望给技术管理者、架构师和有一定基础的技术人员提供帮助,特别是希望改变研发模式,从交付型软件过渡到云服务的传统软件企业开发者,此书将帮助你少走弯路。
作者简介
王启军,目前就职于华为公司架构部,负责华为公司的Cloud Native、微服务架构推进落地,前后参与了华为手机祥云4.0、物联网IoT 2.0的架构设计。曾任知名电商平台架构师,主导电商平台架构设计,包括订单、支付、价格、库存、物流等。曾就职于搜狐,负责手机微博的研发。十余年的技术历练,也曾作为技术负责人带领过近百人的团队。公众号“奔跑中的蜗牛”的作者。
目录
第1章 综述
1.1 Cloud Native的起源
1.2 Cloud Native的组成
1.3 Cloud Native背后的诉求
1.4 如何衡量Cloud Native的能力
1.5 Cloud Native的原则
第2章 微服务架构
2.1 微服务架构的起源
2.2 为什么采用微服务架构
2.2.1 单体架构与微服务架构
2.2.2 什么时候开始微服务架构
2.2.3 如何决定微服务架构的拆分粒度
2.3 微服务设计原则
2.4 微服务架构实施的先决条件
2.4.1 研发环境和流程上的转变
2.4.2 拆分前先做好解耦
2.5 微服务划分模式
2.5.1 基于业务复杂度选择服务划分方法
2.5.2 基于数据驱动划分服务
2.5.3 基于领域驱动划分服务
2.5.4 从已有单体架构中逐步划分服务
2.5.5 微服务拆分策略
2.5.6 如何衡量服务划分的合理性
2.6 微服务划分反模式
2.7 微服务API设计
2.7.1 优秀API的设计原则
2.7.2 服务间通信——RPC
2.7.3 序列化——Protobuf
2.7.4 服务间通信——RESTful
2.7.5 通过Swagger实现RESTful
2.7.6 通过Spring Boot、Springfox、Swagger实现RESTful
2.7.7 HTTP协议的进化——HTTP
2.7.8 HTTP/2和Protobuf的组合——gRPC
2.8 微服务框架
2.9 基于Dubbo框架实现微服务
2.10 基于Spring Cloud框架实现微服务
2.11 服务发现场景下的ZooKeeper与Etcd
2.12 微服务部署策略
2.12.1 服务独享数据库
2.12.2 服务独享虚拟机/容器
2.13 为什么总觉得微服务架构很别扭
第3章 敏捷基础设施及公共基础服务
3.1 传统基础设施面临的挑战
3.2 什么是敏捷基础设施
3.3 基于容器的敏捷基础设施
3.3.1 容器VS虚拟机
3.3.2 安装Docker
3.3.3 部署私有Docker Registry
3.3.4 基于Spring Boot、Maven、Docker构建微服务
3.3.5 基于docker-compose管理容器
3.4 基于公共基础服务的平台化
3.5 监控告警服务
3.5.1 监控数据采集
3.5.2 监控数据接收模式
3.5.3 通过时间序列数据库存储监控数据
3.5.4 开源监控系统实现Prometheus
3.5.5 通过Prometheus和Grafana监控服务
3.6 分布式消息中间件服务
3.6.1 分布式消息中间件的作用
3.6.2 业界常用的分布式消息中间件
3.6.3 Kafka的设计原理
3.6.4 为什么Kafka性能高
3.6.5 Kafka的数据存储结构
3.6.6 如何保证Kafka不丢消息
3.6.7 Kafka跨数据中心场景集群部署模式
3.7 分布式缓存服务
3.7.1 分布式缓存的应用场景
3.7.2 业界常用的分布式缓存Memcached
3.7.3 业界常用的分布式缓存——Redis
3.7.4 Redis常用的分布式缓存集群模式
3.7.5 基于Codis实现Redis分布式缓存集群
3.8 分布式任务调度服务
3.8.1 通过Tbschedule实现分布式任务调度
3.8.2 通过Elastic-Job实现分布式任务调度
3.9 如何生成分布式ID
3.9.1 UUID
3.9.2 SnowFlake
3.9.3 Ticket Server
3.9.4 小结
第4章 可用性设计
4.1 综述
4.1.1 可用性和可靠性的关系
4.1.2 可用性的衡量标准
4.1.3 什么降低了可用性
4.2 逐步切换
4.2.1 影子测试
4.2.2 蓝绿部署
4.2.3 灰度发布/金丝雀发布
4.3 容错设计
4.3.1 消除单点
4.3.2 特性开关
4.3.3 服务分级
4.3.4 降级设计
4.3.5 超时重试
4.3.6 隔离策略
4.3.7 熔断器
4.4 流控设计
4.4.1 限流算法
4.4.2 流控策略
4.4.3 基于Guava限流
4.4.4 基于Nginx限流
4.5 容量预估
4.6 故障演练
4.7 数据迁移
4.7.1 逻辑分离,物理不分离
4.7.2 物理分离
第5章 可扩展性设计
5.1 加机器能解决问题吗
5.2 横向扩展
5.3 AKF扩展立方体
5.4 如何扩展长连接
5.5 如何扩展数据库
5.5.1 X轴扩展——主从复制集群
5.5.2 Y轴扩展——分库、垂直分表
5.5.3 Z轴扩展——分片(sharding)
5.5.4 为什么要带拆分键
5.5.5 分片后的关联查询问题
5.5.6 分片扩容(re-sharding)
5.5.7 精选案例
5.6 如何扩展数据中心
5.6.1 两地三中心和同城多活
5.6.2 同城多活
5.6.3 异地多活
第6章 性能设计
6.1 性能指标
6.2 如何树立目标
6.3 如何寻找平衡点
6.4 如何定位瓶颈点
6.5 服务通信优化
6.5.1 同步转异步
6.5.2 阻塞转非阻塞
6.5.3 序列化
6.6 通过消息中间件提升写性能
6.7 通过缓存提升读性能
6.7.1 基于ConcurrentHashMap实现本地缓存
6.7.2 基于Guava Cache实现本地缓存
6.7.3 缓存的常用模式
6.7.4 应用缓存的常
随便看

 

霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。

 

Copyright © 2002-2024 101bt.net All Rights Reserved
更新时间:2025/1/31 13:32:12