架构师的自我修炼:技术、架构和未来李智慧pdf下载pdf下载

架构师的自我修炼:技术、架构和未来李智慧百度网盘pdf下载

作者:
简介:本篇主要提供架构师的自我修炼:技术、架构和未来李智慧pdf下载
出版社:互动创新图书专营店
出版时间:
pdf下载价格:9.00¥


预览


内容介绍

5b62b57bNd3cb9f8a.png
 书名:  架构师的自我修炼:技术、架构和未来|8079921
 图书定价: 89元
 图书作者: 李智慧
 出版社:  机械工业出版社
 出版日期:  2021/4/16 0:00:00
 ISBN号: 9787111679363
 开本: 16开
 页数: 313
 版次: 1-1
 作者简介
李智慧 著:李智慧,曾担任方正、NEC、阿里巴巴、Intel架构师,也曾担任宅米、WiFi****CTO,目前任同程旅行交通首席架构师;曾设计、开发过Web服务器防火墙、分布式NoSQL系统、大数据仓库引擎、反应式编程框架等基础设施软件,也曾领导设计过多个日活用户为千万级的互联网系统架构。
 内容简介
本书共38章,分四个部分。
部分是架构师的基础知识修炼。软件的基础知识原理主要是操作系统、数据结构、数据库原理等,书中会从常见的问题入手,直达这些基础技术本质的原理,并覆盖这些基础技术的关键技术点,帮助读者理解这些基础技术原理和日常开发工作的关联关系,对这些基础技术有一个全新的认知。
第二部分是架构师的程序设计修炼。讲述如何设计一个强大灵活、易复用、易维护的软件,在这个过程中,应该依赖哪些工具和方法,遵循哪些原则和思想,使用哪些模式和手段。
第三部分是架构师的架构方法修炼。围绕目前主要的互联网分布式架构以及大数据、物联网架构分析这些架构背后的原理,详解它们都遵循了怎样的驱动力和设计思想,以及如何通过这些技术实现系统的高可用和高性能。
第四部分是架构师的思维修炼。软件开发是一个实践性很强的活动,如果只是学习技术,那就是在纸上谈兵。只有将知识技能应用到工作实践中,才能真正体会到技术的关键点在哪里。如何在工作中处理好各种关系,得到充分的授权和信任,在工作中实践自己的技术思想,并为公司创造更多的价值,使自己的技术成长和职业发展进入互相促进的正向通道,也是架构师需要修炼与提升的。
 目录

前言
*部分  架构师的基础知识修炼
第1章 操作系统原理:程序是如何运行和崩溃的2
1.1 程序是如何运行起来的2
1.2 一台计算机如何同时处理数以百计的任务4
1.3 系统为什么会变慢,为什么会崩溃5
1.4 小结7
第2章 数据结构原理:Hash表的时间复杂度为什么是O(1)8
2.1 数组的结构8
2.2 链表的结构9
2.3 Hash表的结构10
2.4 栈的结构12
2.5 队列的结构13
2.6 树的结构14
2.7 小结14
第3章 Java虚拟机原理:JVM为什么被称为机器16
3.1 JVM的构造17
3.2 JVM的垃圾回收19
3.3 Web应用程序在JVM中的执行过程22
3.4 小结24
第4章 网络编程原理:一个字符的互联网之旅25
4.1 DNS域名解析原理26
4.2 CDN27
4.3 HTTP的结构28
4.4 TCP的结构29
4.5 链路层负载均衡原理32
4.6 小结33
第5章 文件系统原理:用1分钟遍历一个100TB的文件34
5.1 硬盘结构原理35
5.2 文件系统原理36
5.3 RAID硬盘阵列原理37
5.4 分布式文件系统架构原理39
5.5 小结40
第6章 数据库原理:SQL为什么要预编译42
6.1 数据库架构与SQL执行过程43
6.2 使用PrepareStatement执行SQL的好处45
6.3 数据库文件存储与索引工作原理46
6.4 小结48
第7章 编程语言原理:面向对象编程是编程的终极形态吗49
7.1 软件编程的远古时代49
7.2 机器与汇编语言时代51
7.3 高级编程语言时代51
7.4 面向对象编程时代52
7.5 编程语言的未来53
7.6 小结54
第二部分  架构师的程序设计修炼
第8章 软件设计的方法论:软件为什么要建模56
8.1 什么是软件建模57
8.2 4+1视图模型58
8.3 UML建模59
8.4 小结60
第9章 软件设计实践:使用UML完成一个设计文档61
9.1 用类图设计对象模型61
9.2 用序列图描述系统调用62
9.3 用组件图进行模块设计63
9.4 用部署图描述系统物理架构64
9.5 使用用例图进行需求分析65
9.6 用状态图描述对象状态变迁66
9.7 用活动图描述调用流程66
9.8 使用合适的UML模型构建一个软件设计文档67
9.9 软件架构设计文档示例模板68
9.10 小结74
第10章 软件设计的目的:糟糕的程序差在哪里75
10.1 糟糕的设计有多糟糕76
10.2 一个设计“腐坏”的例子77
10.3 解决之道78
10.4 小结80
第11章 软件设计的开闭原则:不修改代码却能实现需求变更81
11.1 什么是开闭原则81
11.2 一个违反开闭原则的例子82
11.3 使用策略模式实现开闭原则84
11.4 使用适配器模式实现开闭原则85
11.5 使用观察者模式实现开闭原则86
11.6 使用模板方法模式实现开闭原则88
11.7 小结89
第12章 软件设计的依赖倒置原则:不依赖代码却可以复用它的功能91
12.1 依赖倒置原则91
12.2 依赖倒置的关键是接口所有权的倒置93
12.3 使用依赖倒置来实现高层模块复用94
12.4 小结96
第13章 软件设计的里氏替换原则:正方形可以继承长方形吗97
13.1 里氏替换原则98
13.2 一个违反里氏替换原则的例子99
13.3 正方形可以继承长方形吗100
13.4 子类不能比父类更严格101
13.5 小结102
第14章 软件设计的单一职责原则:一个类文件打开后*好不要超过一屏104
14.1 单一职责原则107
14.2 一个违反单一职责原则的例子107
14.3 从Web应用架构演进看单一职责原则108
14.4 小结110
第15章 软件设计的接口隔离原则:如何对类的调用者隐藏类的公有方法112
15.1 接口隔离原则113
15.2 一个使用接口隔离原则优化的例子114
15.3 接口隔离原则在迭代器设计模式中的应用117
15.4 小结117
第16章 设计模式基础:不会灵活应用设计模式,就没有掌握面向对象编程119
16.1 面向对象编程的本质是多态119
16.2 设计模式的精髓是对多态的使用121
16.3 小结123
第17章 设计模式应用:编程框架中的设计模式125
17.1 什么是框架125
17.2 Web容器中的设计模式127
17.3 JUnit中的设计模式129
17.4 小结132
第18章 反应式编程框架设计:如何使程序调用不阻塞等待,立即响应133
18.1 反应式编程135
18.2 反应式编程框架Flower的基本原理135
18.3 反应式编程框架Flower的设计方法138
18.4 反应式编程框架Flower的落地效果140
18.5 小结141
第19章 组件设计原则:组件的边界在哪里143
19.1 组件内聚原则144
19.2 组件耦合原则145
19.3 小结147
第20章 领域驱动设计:35岁的程序员应该写什么样的代码148
20.1 领域模型模式149
20.2 领域驱动设计151
20.3 小结154
第三部分  架构师的架构方法修炼
第21章 分布式架构:如何应对高并发的用户请求156
21.1 垂直伸缩与水平伸缩157
21.2 互联网分布式架构演化157
21.3 小结163
第22章 缓存架构:减少不必要的计算165
22.1 通读缓存166
22.2 旁路缓存168
22.3 缓存注意事项171
22.4 小结173
第23章 异步架构:避免互相依赖的系统间耦合174
23.1 使用消息队列实现异步架构175
23.2 消息队列异步架构的好处178
23.3 小结180
第24章 负载均衡架构:用10行代码实现一个负载均衡服务181
24.1 HTTP重定向负载均衡181
24.2 DNS负载均衡183
24.3 反向代理负载均衡184
24.4 IP负载均衡184
24.5 数据链路层负载均衡186
24.6 小结187
第25章 数据存储架构:改善系统的数据存储能力188
25.1 数据库主从复制188
25.2 数据库分片190
25.3 关系数据库的混合部署193
25.4 NoSQL数据库196
25.5 小结197
第26章 搜索引擎架构:瞬间完成海量数据检索199
26.1 搜索引擎倒排索引199
26.2 搜索引擎结果排序202
26.3 小结205
第27章 微服务架构:微服务究竟是“灵丹”还是“毒药”206
27.1 单体架构的困难和挑战206
27.2 微服务框架原理208
27.3 微服务架构的落地实践210
27.4 小结211
第28章 高性能架构:除了代码,还可以在哪些地方优化性能212
28.1 性能指标212
28.2 性能测试213
28.3 性能优化215
28.4 小结219
第29章 高可用架构:淘宝应用升级时,为什么没有停机220
29.1 高可用的度量221
29.2 高可用的架构222
29.3 小结225
第30章 安全性架构:为什么说用户密码泄露是程序员的问题227
30.1 数据加密与解密227
30.2 HTTP攻击与防护230
30.3 小结233
第31章 大数据架构:思想和原理234
31.1 HDFS分布式文件存储架构235
31.2 MapReduce大数据计算架构236
31.3 Hive大数据仓库架构238
31.4 Spark快速大数据计算架构240
31.5 大数据流计算架构242
31.6 小结242
第32章 AI与物联网架构:从智能引擎到物联网平台243
32.1 大数...
 编辑推荐
凝聚资深架构专家多年实践经验,全面展示架构师进阶修炼之路
从操作系统到数据结构的基础知识修炼
从设计原则到设计模式的程序设计修炼
从高性能到高可用的架构方法修炼
从自我成长到人际沟通的思维方式修炼