Java知识分享网 - 轻松学习从此开始!    

Java知识分享网

Java1234官方群25:java1234官方群17
Java1234官方群25:838462530
        
SpringBoot+SpringSecurity+Vue+ElementPlus权限系统实战课程 震撼发布        

最新Java全栈就业实战课程(免费)

springcloud分布式电商秒杀实战课程

IDEA永久激活

66套java实战课程无套路领取

锋哥开始收Java学员啦!

Python学习路线图

锋哥开始收Java学员啦!
当前位置: 主页 > Java文档 > Java基础相关 >

持续交付实战 PDF 下载


分享到:
时间:2021-12-14 09:32来源:http://www.java1234.com 作者:转载  侵权举报
持续交付实战 PDF 下载
失效链接处理
持续交付实战  PDF 下载


本站整理下载:
版权归出版社和原作者所有,链接已删除,请购买正版
 
 
用户下载说明:
电子版仅供预览,下载后24小时内务必删除,支持正版,喜欢的请购买正版书籍:
http://product.dangdang.com/28546541.html
  
相关截图:



资料简介:
《持续交付实战》是持续交付实战指南,具体内容包括:持续交付能够解决的问题以及它具体如何解决问题,PaaS云解决方案,用Gradle、Maven和Jenkins实现自动化构建和持续集成,用SonarQube执行静态代码,如何通过容量测试确保性能,探索式测试的新特性和问题,在生产环境中发布版本和运行应用程序,等等。



资料目录:

第 一部分 基础

第 1 章 持续交付:是什么和怎么做 2

1.1 什么是持续交付 2

1.2 为什么软件发布如此复杂 2

1.2.1 持续集成带来希望 2

1.2.2 过程缓慢且有风险 3

1.2.3 变快是有可能的 3

1.3 持续交付的价值 3

1.3.1 规律性 3

1.3.2 可追溯性 4

1.3.3 退化 4

1.4 持续交付的优势 4

1.4.1 持续交付可加快上市速度 5

1.4.2 示例 5

1.4.3 实现特性并将其发布到生产环境 5

1.4.4 下一个特性 5

1.4.5 持续交付能带来竞争优势 5

1.4.6 如果没有持续交付 6

1.4.7 持续交付和精益创业 6

1.4.8 对开发过程的影响 6

1.4.9 小化风险 7

1.4.10 更快的反馈和精益 9

1.5 持续交付流水线的生成及其结构 10

1.6 小结 12

第 2 章 提供基础设施 13

2.1 概述 13

2.2 安装脚本 14

2.3 Chef 16

2.3.1 对比Chef与Puppet 17

2.3.2 其他备选方案 18

2.3.3 技术基础 18

2.3.4 Chef Solo 23

2.3.5 Chef Solo总结 24

2.3.6 Knife和Chef Server 24

2.3.7 Chef Server总结 27

2.4 Vagrant 28

2.4.1 Chef和Vagrant实例 29

2.4.2 Vagrant总结 30

2.5 Docker 30

2.5.1 Docker解决方案 31

2.5.2 创建Docker容器 32

2.5.3 使用Docker运行示例应用程序 35

2.5.4 Docker和Vagrant 36

2.5.5 Docker Machine 38

2.5.6 Docker的复杂配置 39

2.5.7 Docker Compose 41

2.6 不可变的服务器 43

2.6.1 幂等性的缺点 43

2.6.2 不可变服务器和Docker 43

2.7 基础设施即代码 44

2.8 平台即服务 45

2.9 数据和数据库的处理 47

2.9.1 模式的处理 47

2.9.2 测试和主数据 48

2.10 小结 49

第二部分 持续交付流水线

第 3 章 构建自动化和持续集成 52

3.1 概述 52

3.2 构建自动化和构建工具 52

3.2.1 Java世界中的构建工具 53

3.2.2 Ant 54

3.2.3 Maven 54

3.2.4 Gradle 58

3.2.5 其他构建工具 60

3.2.6 选择合适的工具 60

3.3 单元测试 61

3.3.1 编写好的单元测试 62

3.3.2 测试驱动开发 64

3.3.3 整洁的代码和软件工艺 65

3.4 持续集成 65

3.4.1 Jenkins 66

3.4.2 持续集成基础设施 70

3.4.3 结论 71

3.5 度量代码质量 73

3.6 工件管理 76

3.6.1 集成到构建中 78

3.6.2 仓库的高级特性 79

3.7 小结 80

第 4 章 验收测试 81

4.1 概述 81

4.2 测试金字塔 82

4.3 什么是验收测试 84

4.3.1 自动化验收测试 84

4.3.2 不仅仅是提升效率 84

4.3.3 手动测试 85

4.3.4 客户 85

4.3.5 对比验收测试与单元测试 86

4.3.6 测试环境 86

4.4 基于图形用户界面的验收测试 87

4.4.1 图形用户界面测试的问题 87

4.4.2 针对脆弱的图形用户界面测试的抽象 87

4.4.3 使用Selenium实现自动化 88

4.4.4 WebDriver API 88

4.4.5 无须Web浏览器的测试:HtmlUnit 88

4.4.6 Selenium WebDriver API 88

4.4.7 Selenium IDE 88

4.4.8 自动化图形用户界面测试的问题 90

4.4.9 执行图形用户界面测试 90

4.4.10 将测试导出为代码 90

4.4.11 手动修改测试用例 90

4.4.12 测试数据 91

4.4.13 Page对象 91

4.5 图形用户界面测试的替代工具 91

4.5.1 PhantomJS 92

4.5.2 Windmill 92

4.6 文本化验收测试 93

4.6.1 行为驱动开发 93

4.6.2 不同的适配器 95

4.7 其他可选框架 96

4.8 验收测试策略 97

4.8.1 合适的工具 97

4.8.2 快速反馈 97

4.8.3 测试覆盖率 98

4.9 小结 98

第 5 章 容量测试 99

5.1 概述 99

5.2 如何进行容量测试 99

5.2.1 容量测试的目标 100

5.2.2 数据量与环境 100

5.2.3 只在实现结束时才进行性能测试吗 100

5.2.4 容量测试 = 风险管理 100

5.2.5 用户模拟 101

5.2.6 记录性能需求 101

5.2.7 用于容量测试的硬件 101

5.2.8 云和虚拟化 102

5.2.9 通过持续测试使风险小化 102

5.2.10 容量测试是否明智 102

5.3 实现容量测试 103

5.4 使用Gatling实现容量测试 104

5.5 Gatling的替代工具 108

5.5.1 Grinder 108

5.5.2 Apache JMeter 108

5.5.3 Tsung 109

5.5.4 商业解决方案 109

5.6 小结 109

第 6 章 探索式测试 110

6.1 概述 110

6.2 为什么要进行探索式测试 110

6.2.1 有时手动测试会更好 110

6.2.2 由客户测试 111

6.2.3 非功能性需求的手动测试 111

6.3 该怎么做 111

6.3.1 测试任务指南 112

6.3.2 自动化的环境 112

6.3.3 以展示为依据 112

6.3.4 示例:电子商务应用程序 112

6.3.5 Beta测试 112

6.3.6 基于会话的测试 113

6.4 小结 114

第 7 章 部署:在生产环境中发布版本 115

7.1 概述 115

7.2 发布和回滚 115

7.2.1 优点 116

7.2.2 缺点 116

7.3 前滚 116

7.3.1 优点 117

7.3.2 缺点 117

7.4 蓝/绿部署 117

7.4.1 优点 118

7.4.2 缺点 118

7.5 金丝雀发布 118

7.5.1 优点 119

7.5.2 缺点 119

7.6 持续部署 120

7.6.1 优点 120

7.6.2 缺点 121

7.7 虚拟化 121

7.8 Web应用程序之外 122

7.9 小结 123

第 8 章 运维 124

8.1 概述 124

8.2 运维中的挑战 124

8.3 日志文件 125

8.3.1 应该记录什么 126

8.3.2 处理日志文件的工具 127

8.3.3 示例应用程序中的日志记录 128

8.4 示例应用程序的日志分析 129

8.4.1 用Kibana做分析 131

8.4.2 ELK——可扩展性 132

8.5 用于日志的其他技术 134

8.6 高级日志技术 135

8.6.1 匿名化 135

8.6.2 性能 136

8.6.3 时间 136

8.6.4 运维数据库 136

8.7 监控 136

8.8 Graphite指标 137

8.9 示例应用程序中的指标 138

8.10 其他监控解决方案 140

8.11 运维应用程序时的额外挑战 141

8.11.1 脚本 141

8.11.2 客户数据中心内的应用程序 141

8.12 小结 142

第三部分 持续交付的管理、组织和架构

第 9 章 引入持续交付 144

9.1 概述 144

9.2 从一开始就引入持续交付 144

9.3 价值流映射 145

9.3.1 描述事件序列的价值流映射 145

9.3.2 优化 145

9.4 其他优化措施 146

9.4.1 质量投资 146

9.4.2 成本 147

9.4.3 收益 147

9.4.4 不要在“红色构建”上检入 147

9.4.5 立即停止 148

9.4.6 “五个为什么” 148

9.4.7 DevOps 149

9.5 小结 149

第 10 章 持续交付和DevOps 150

10.1 概述 150

10.2 什么是DevOps 150

10.2.1 问题 150

10.2.2 客户视角 151

10.2.3 先锋:亚马逊 151

10.2.4 DevOps 151

10.3 持续交付和DevOps 152

10.3.1 DevOps:不只是持续交付 153

10.3.2 个体责任和自组织 153

10.3.3 技术决策 154

10.3.4 减少集中控制 154

10.3.5 技术多元化 154

10.3.6 团队间的交流 154

10.3.7 架构 155

10.4 没有DevOps的持续交付 156

10.5 小结 157

第 11 章 持续交付、DevOps和软件架构 158

11.1 概述 158

11.2 软件架构 158

11.3 针对持续交付优化架构 160

11.4 接口 161

11.4.1 伯斯塔尔法则 162

11.4.2 容错设计 162

11.4.3 状态 163

11.5 数据库 163

11.5.1 保持数据库稳定 163

11.5.2 数据库 = 组件 164

11.5.3 视图和存储过程 164

11.5.4 每个组件一个数据库 165

11.5.5 NoSQL数据库 165

11.6 微服务 165

11.6.1 微服务与持续交付 165

11.6.2 借助微服务引入持续交付 166

11.6.3 微服务需要持续交付 166

11.6.4 组织 166

11.7 新特性的处理 167

11.7.1 特性分支 167

11.7.2 特性开关 167

11.7.3 优点 167

11.7.4 特性开关的用例 168

11.7.5 缺点 168

11.8 小结 169

第 12 章 总结:收益是什么 170


 
------分隔线----------------------------

锋哥公众号


锋哥微信


关注公众号
【Java资料站】
回复 666
获取 
66套java
从菜鸡到大神
项目实战课程

锋哥推荐