您好,欢迎来到聚文网。 登录 免费注册
架构师修炼之道 思维、方法与实践

架构师修炼之道 思维、方法与实践

  • 字数: 386400
  • 装帧: 平装
  • 出版社: 电子工业出版社
  • 作者: 张云鹏
  • 出版日期: 2020-09-01
  • 商品条码: 9787121393808
  • 版次: 1
  • 开本: 16开
  • 页数: 276
  • 出版年份: 2020
定价:¥99 销售价:登录后查看价格  ¥{{selectedSku?.salePrice}} 
库存: {{selectedSku?.stock}} 库存充足
{{item.title}}:
{{its.name}}
精选
编辑推荐
"书中的内容都是架构设计中遇到的经典问题,解决方案也都是作者的亲身经历。其中: 在“架构设计的技术方法”部分中,从“切分与扩展”“主动发现”“自动化”“灰度升级”“过载保护”“负载均衡”“柔性”等技术角度对架构设计进行阐述。 “架构思维意识部分”从不同的角度对影响架构设计的“心法”展开介绍,包括“稳定为王”“完成比完美更重要”“聚沙成塔”“自动化思维”“产品思维”。 “善用工具”部分介绍了部分算法和流程,帮助读者更好地将这些工具应用到架构设计工作中。 “案例剖析”部分详细列举了互联网架构设计中的三个案例,分别是“统计用户在线时长”“抽奖活动”“短网址服务”。 相信通过这些“纯干货”的阅读和深思,我们的架构水平可以更上一层楼!"
内容简介
架构设计是互联网后端开发人员必须具备的一项重要能力。大多数开发人员都是通过实际项目来培养架构设计能力的。这样的学习方式对项目本身的复杂程度依赖较重,而且会增加学习的时间。在本书中,作者结合多年的架构学习和项目开发经验,总结出一套架构学习的体系,从技术方法、思维意识、工具等方面讲解做好互联网后端架构设计的相关知识。通过相关知识的学习,读者能够掌握设计稳定、易维护、易扩展的软件架构的方法,也能够提升日常维护己有项目的能力。书中讲解的技术方法具有通用性,在其他非互联网行业的软件开发中,也具有借鉴意义。本书介绍的架构设计方法主要适合以下读者:从事互联网后端开发的工程师;从事互联网行业的产品经理;即将加入互联网行业的新人。
目录
第一部分架构简介
第1章架构简介2
1.1架构的定义2
1.2对架构师的要求4
1.3互联网架构的挑战7
1.4一切尽在控制8
1.5小结10
第二部分架构设计的技术方法
第2章切分与扩展16
2.1切分16
2.1.1数据维度切分16
2.1.2逻辑维度切分23
2.1.3切分的优点24
2.2扩展25
2.2.1部署扩展25
2.2.2升级扩展27
2.2.3set模型29
2.3小结31
第3章主动发现33
3.1日志34
3.1.1为什么要记日志34
3.1.2日志级别35
3.1.3日志类型36
3.1.4注意事项38
3.2监控40
3.3主动发现的监控标准43
3.3.1系统层监控43
3.3.2用户侧监控44
3.3.3应用层监控45
3.4其他形式的监控47
3.5小结49
第4章自动化52
4.1自动部署54
4.1.1准备54
4.1.2实现55
4.1.3验证57
4.2自动恢复58
4.2.1服务恢复58
4.2.2流量迁移60
4.3提升自动化意识63
4.4其他场景64
4.5小结66
第5章灰度升级67
5.1策略68
5.1.1按照用户身份执行灰度策略68
5.1.2按照号段执行灰度策略69
5.1.3按照命令号执行灰度策略70
5.1.4按照时间执行灰度策略71
5.2灰度部署方式73
5.2.1蓝绿部署/发布73
5.2.2金丝雀发布74
5.3注意事项75
5.3.1数据采样75
5.3.2及时回滚76
5.3.3周期接近76
5.3.4测试接近77
5.3.5充分验证78
5.4案例―系统迁移下线操作79
5.4.1验证和比对79
5.4.2回滚80
5.5小结81
第6章过载保护82
6.1过载的现象及原因82
6.1.1什么是过载82
6.1.2过载现象及原因分析85
6.2处理方式86
6.2.1隔离87
6.2.2限流88
6.2.3节流和防抖94
6.2.4动态调节95
6.2.5尽早拒绝96
6.2.6调整缓冲区大小97
6.2.7减少重试98
6.2.8做好容量评估98
6.3小结99
第7章负载均衡100
7.1理论算法100
7.1.1基本轮询100
7.1.2加权轮询102
7.1.3随机访问103
7.1.4源地址Hash104
7.1.5最小连接数105
7.1.6映射分配106
7.1.7一致性Hash107
7.2动态负载均衡110
7.3常用组件111
7.3.1DNS111
7.3.2Nginx111
7.3.3LVS113
7.3.4NAT模式113
7.3.5DR模式114
7.3.6IPTunneling模式115
7.3.7SDK组件117
7.4实际案例―Web类业务负载均衡实现117
7.5小结119
第8章柔性120
8.1理论基础122
8.1.1CAP定理122
8.1.2BASE理论124
8.2柔性的实现方法126
8.2.1产品角度127
8.2.2技术角度128
8.3验证方式131
8.4小结132
第三部分架构思维意识
第9章稳定为王137
9.1控制因素137
9.1.1安全137
9.1.2变更141
9.2保障方法144
9.2.1合理拒绝145
9.2.2厘清主次关系145
9.2.3容量量化147
9.2.4预先准备148
9.2.5注重监控149
9.2.6敬畏之心150
9.3应对异常152
9.3.1处理事故152
9.3.2管理预期153
9.3.3复盘总结153
9.3.4有效预防153
9.3.5谨慎变更154
9.4小结155
第10章完成比完美重要156
10.1先扛住再优化156
10.1.1快速抢占市场157
10.1.2实现先于性能157
10.1.3需求可能修改158
10.1.4验证用户行为158
10.1.5突发问题案例158
10.2最小可用,快速迭代160
10.3不要等待160
10.4接受不完美161
10.4.1分清主次161
10.4.2自动化降级162
10.4.3代价大力度优惠162
10.5及时偿还技术债务163
10.5.1定期重构164
10.5.2及时清理165
10.5.3对技术有追求167
10.6小结167
第11章聚沙成塔168
11.1小而简洁168
11.2扩展能力172
11.3小结173
第12章自动化思维175
12.1拒绝重复175
12.1.1时间成本175
12.1.2解决重复176
12.2工具系统化178
12.3小结180
第13章产品思维181
13.1体验业务181
13.2体验竞品182
13.3扬长避短183
13.4控制欲望184
13.5献计献策185
13.6反哺方案185
13.7小结186
第四部分善用工具
第14章算法189
14.1树状数组190
14.1.1问题场景190
14.1.2排行榜实现及优化方案191
14.1.3树状数组实现排行榜191
14.1.4树状数组优化排行榜195
14.2多阶Hash算法196
14.2.1原理196
14.2.2优点197
14.2.3缺点198
14.3利用线性同余的一致性Hash算法199
14.3.1算法内容199
14.3.2适用场景199
14.3.3实现原理200
14.4随机数在互联网业务中的应用203
14.4.1随机数的生成方法203
14.4.2误用随机数的场景205
14.4.3项目中用到随机数的场景207
14.5小结212
第15章流程和文化213
15.1流程213
15.1.1需求阶段214
15.1.2开发阶段215
15.1.3测试阶段217
15.1.4发布阶段219
15.1.5运营阶段220
15.1.6管理机制221
15.2文化222
15.3小结223
第五部分案例剖析
第16章架构案例剖析226
16.1小型案例―统计用户在线时长226
16.1.1需求描述226
16.1.2项目背景227
16.1.3需求分析228
16.1.4实现方案228
16.1.5案例总结230
16.2中型案例―抽奖活动231
16.2.1需求描述231
16.2.2需求分析231
16.2.3实现方案232
16.2.4整体架构设计238
16.2.5案例总结240
16.3大型案例―短网址服务241
16.3.1需求描述241
16.3.2需求分析241
16.3.3需求一:内部使用243
16.3.4需求二:大型互联网服务方案246
16.4小结256

蜀ICP备2024047804号

Copyright 版权所有 © jvwen.com 聚文网