套装包括以下三本:
亿级流量网站架构核心技术
轻量级微服务架构
本系列从开发与运维两方面分别对微服务架构的实践过程进行描述,全套分为上下两册,上册偏重于开发,下册偏重于运维。在上册中读者会学习到微服务架构所需的开发技能,包括使用SpringBoot搭建微服务开发框架,使用Node.js搭建微服务网关,使用ZooKeeper实现微服务注册与发现,使用Docker封装微服务,使用Jenkins部署微服务。通过阅读上册,读者可轻松搭建一款轻量级微服务架构。
《轻量级微服务架构(上册)》适合对微服务实践感兴趣,以及想成为微服务架构师的人员阅读。
第1章 微服务架构设计概述
1.1 为什么需要微服务架构
1.1.1 传统应用架构的问题
1.1.2 如何解决传统应用架构的问题
1.1.3 传统应用架构还有哪些问题
1.2 微服务架构是什么
1.2.1 微服务架构概念
1.2.2 微服务交付流程
1.2.3 微服务开发规范
1.2.4 微服务架构模式
1.3 微服务架构有哪些特点和挑战
1.3.1 微服务架构的特点
1.3.2 微服务架构的挑战
1.4 如何搭建微服务架构
1.4.1 微服务架构图
1.4.2 微服务技术选型
1.5 本章小结
第2章 微服务开发框架
2.1 Spring Boot 是什么
2.1.1 Spring Boot的由来
2.1.2 Spring Boot的特性
2.1.3 Spring Boot相关插件
2.1.4 Spring Boot的应用场景
2.2 如何使用Spring Boot框架
2.2.1 搭建Spring Boot开发框架
2.2.2 开发一个简单的Spring Boot应用程序
2.2.3 运行Spring Boot应用程序
2.3 Spring Boot生产级特性
2.3.1 端点
2.3.2 健康检查
2.3.3 应用基本信息
2.3.4 跨域
2.3.5 外部配置
2.3.6 远程监控
2.4 本章小结
第3章 微服务网关
3.1 Node.js是什么
3.1.1 Node.js快速入门
3.1.2 Node.js应用场景
3.2 如何使用Node.js
3.2.1 安装Node.js
3.2.2 使用Node.js开发 Web应用
3.2.3 使用Express框架开发Web应用
3.2.4 搭建Node.js集群环境
3.3 使用Node.js搭建微服务网关
3.3.1 什么是微服务网关
3.3.2 使用Node.js实现反向代理
3.4 本章小结
第4章 微服务注册与发现
4.1 ZooKeeper是什么
4.1.1 ZooKeeper树状模型
4.1.2 ZooKeeper集群结构
4.2 如何使用ZooKeeper
4.2.1 运行ZooKeeper
4.2.2 搭建ZooKeeper集群环境
4.2.3 使用命令行客户端连接ZooKeeper
4.2.4 使用Java客户端连接ZooKeeper
4.2.5 使用Node.js客户端连接ZooKeeper
4.3 实现服务注册组件
4.3.1 设计服务注册表数据结构
4.3.2 搭建应用程序框架
4.3.3 定义服务注册表接口
4.3.4 使用ZooKeeper实现服务注册
4.3.5 服务注册模式
4.4 实现服务发现组件
4.4.1 定义服务发现策略
4.4.2 搭建应用程序框架
4.4.3 使用Node.js实现服务发现
4.4.4 服务发现优化方案
4.4.5 服务发现模式
4.5 本章小结
第5章 微服务封装
5.1 Docker是什么
5.1.1 Docker简介
5.1.2 虚拟机与Docker对比
5.1.3 Docker的特点
5.1.4 Docker系统架构
5.1.5 安装Docker
5.2 如何使用Docker
5.2.1 Docker镜像常用操作
5.2.2 Docker容器常用操作
5.2.3 Docker命令汇总
5.3 手工制作Java镜像
5.3.1 下载JDK
5.3.2 启动容器
5.3.3 提交镜像
5.3.4 验证镜像
5.4 使用Dockerfile构建镜像
5.4.1 了解Dockerfile基本结构
5.4.2 使用Dockerfile构建镜像
5.4.3 Dockerfile指令汇总
5.5 使用Docker Registry管理镜像
5.5.1 使用Docker Hub
5.5.2 搭建Docker Registry
5.6 Spring Boot与Docker整合
5.6.1 搭建Spring Boot应用程序框架
5.6.2 为Spring Boot应用添加Dockerfile
5.6.3 使用Maven构建Docker镜像
5.6.4 启动Spring Boot的Docker容器
5.6.5 调整Docker容器内存限制
5.7 本章小结
第6章 微服务部署
6.1 Jenkins是什么
6.1.1 Jenkins简介
6.1.2 自动化发布平台
6.1.3 安装Jenkins
6.2 搭建GitLab版本控制系统
6.2.1 GitLab简介
6.2.2 安装GitLab
6.2.3 将代码推送至GitLab中
6.3 搭建Jenkins持续集成系统
6.3.1 创建构建任务
6.3.2 手工执行构建
6.3.3 自动执行构建
6.4 使用Jenkins实现自动化发布
6.4.1 自动发布jar包
6.4.2 自动发布Docker容器
6.5 本章小结
内容提要
《架构探险:从零开始写分布式服务框架》的初衷是希望把分布式服务框架的实现细节及分布式服务框架周边的知识点梳理清楚,为那些对分布式服务框架感兴趣的人打开一扇窗户,降低获取相关知识的门槛。所以《架构探险:从零开始写分布式服务框架》围绕实现分布式服务框架所需的知识点,进行了比较详尽细致的介绍。包括常见的RPC框架、常见的序列化/反序列化方案及选型、分布式服务框架服务的发布引入实现细节、软负载实现、底层通信方案实现、服务注册与发现实现、服务治理常见的功能等。通过对这些知识点的逐步讲解,层层深入,·终完成一个可运行的分布式服务框架。
通过《架构探险:从零开始写分布式服务框架》,读者可以完整地了解实现一个分布式服务框架的所有技术细节和实现原理,希望对想了解分布式服务框架实现细节的读者有所启发和帮助。
目 录
第1章 常用的RPC框架 1
1.1 RPC框架原理 1
1.2 RMI介绍 2
1.2.1 原生RMI代码示例 3
1.2.2 RMI穿透防火墙 5
1.3 CXF/Axis2介绍 7
1.3.1 CXF介绍 7
1.3.2 Axis2介绍 14
1.4 Thrift介绍 21
1.4.1 Thrift工作原理介绍 23
1.4.2 Thrift IDL语法说明 26
1.4.3 基于Apache Thrift的Java版完整案例 28
1.4.4 基于Java注解的简化实现 36
1.5 gRPC介绍 42
1.5.1 protobuf3语法介绍 43
1.5.2 gRPC使用示例 45
1.6 HTTP Client介绍 53
1.6.1 构建HttpClient对象54
1.6.2 构建URI对象 55
1.6.3 构建请求对象(HttpGet、HttpPost) 56
1.6.4 HttpClient发起调用及获取调用返回结果 56
1.7 实现自己的RPC框架 61
1.8 RPC框架与分布式服务框架的区别 68
1.9 本章小结 68
第2章 分布式服务框架总体架构与功能 69
2.1 面向服务的体系架构(SOA) 69
2.1.1 面向服务架构范式 69
2.1.2 服务拆分原则 71
2.2 分布式服务框架现实需求 72
2.3 分布式服务框架总体架构及所需的技术概述 72
2.4 本章小结 74
第3章 分布式服务框架序列化与反序列化实现 75
3.1 序列化原理及常用的序列化介绍 75
3.2 Java默认的序列化 77
3.3 XML序列化框架介绍 80
3.4 JSON序列化框架介绍 82
3.5 Hessian序列化框架介绍 87
3.6 protobuf序列化框架介绍 88
3.7 protostuff序列化框架介绍 93
3.8 Thrift序列化框架介绍98
3.9 Avro序列化框架介绍 100
3.9.1 Avro介绍 100
3.9.2 Avro IDL语言介绍 101
3.9.3 Schema定义介绍 103
3.9.4 Maven配置及使用IDL与Schema自动生成代码 103
3.9.5 Avro序列化/反序列化实现 105
3.10 JBoss Marshalling序列化框架介绍 110
3.11 序列化框架的选型 112
3.12 实现自己的序列化工具引擎 113
3.13 本章小结 118
第4章 实现分布式服务框架服务的发布与引入 119
4.1 Spring Framework框架概述119
4.1.1 Spring Framework介绍 119
4.1.2 Spring Framework周边生态项目介绍 121
4.2 FactoryBean的秘密 122
4.2.1 FactoryBean的作用及使用场景 123
4.2.2 FactoryBean实现原理及示例说明 124
4.3 Spring框架对于已有RPC框架集成的支持 127
4.3.1 Spring支持集成RPC框架介绍127
4.3.2 基于RmiProxyFactoryBean实现RMI与Spring的集成128
4.3.3 基于HttpInvokerProxyFactoryBean实现HTTP Invoker与Spring的集成 131
4.3.4 基于HessianProxyFactoryBean实现Hessian与Spring的集成 133
4.4 实现自定义服务框架与Spring的集成 136
4.4.1 实现远程服务的发布 136
4.4.2 实现远程服务的引入 144
4.5 在Spring中定制自己的XML标签 150
4.6 本章小结 158
第5章 分布式服务框架注册中心 159
5.1 服务注册中心介绍 159
5.2 ZooKeeper实现服务的注册中心原理161
5.2.1 ZooKeeper介绍 161
5.2.2 部署ZooKeeper 161
5.2.3 ZkClient使用介绍 164
5.2.4 ZooKeeper实现服务注册中心 173
5.3 集成ZooKeeper实现自己的服务注册与发现 175
5.3.1 服务注册中心服务提供方 175
5.3.2 服务注册中心服务消费方 176
5.3.3 服务注册中心实现 178
5.4 本章小结 189
第6章 分布式服务框架底层通信实现 190
6.1 Java I/O模型及I/O类库的进化 190
6.1.1 Linux下实现的I/O模型 190
6.1.2 Java语言实现的I/O模型194
6.1.3 Java Classic I/O(Blocking I/O)介绍 194
6.1.4 Java Non-blocking I/O(NIO)介绍 211
6.1.5 NIO2及Asynchronous I/O介绍 233
6.2 Netty使用介绍 255
6.2.1 Netty开发入门 256
6.2.2 Netty粘包/半包问题解决 265
6.3 使用Netty构建服务框架底层通信 320
6.3.1 构建分布式服务框架Netty服务端320
6.3.2 构建分布式服务框架服务调用端Netty客户端 330
6.4 本章小结 347
第7章 分布式服务框架软负载实现 348
7.1 软负载的实现原理 348
7.2 负载均衡常用算法 349
7.2.1 软负载随机算法实现 349
7.2.2 软负载加权随机算法实现 350
7.2.3 软负载轮询算法实现 351
7.2.4 软负载加权轮询算法实现 352
7.2.5 软负载源地址hash算法实现 354
7.3 实现自己的软负载机制 355
7.4 软负载在分布式服务框架中的应用 357
7.5 本章小结 361
第8章 分布式服务框架服务治理 362
8.1 服务治理介绍 362
8.2 服务治理的简单实现 364
8.2.1 服务分组路由实现 364
8.2.2 简单服务依赖关系分析实现 374
8.2.3 服务调用链路跟踪实现原理 380
8.3 本章小结 380
附录A 如何配置运行本书完成的分布式服务框架381
作者简介
李业兵
先后在支付宝运营支撑事业部、去哪儿网酒店事业部任职高级开发工程师。于2015年加入猫眼电影(原美团网旗下电影事业部),负责交易业务线架构与开发工作。
擅长电商交易领域系统设计与架构,在电商交易领域系统架构设计方面积累了较为丰富的实践经验。
对高并发系统设计、服务化架构、互联网中间件开发保持着浓厚的兴趣。
评分
评分
评分
评分
评分
评分
评分
评分
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等,本站所有链接都为正版商品购买链接。
© 2025 windowsfront.com All Rights Reserved. 静流书站 版权所有