• 软件架构设计 大型技术架构与业务架构融合之道 网络技术 余春龙 新华正版
21年品牌 40万+商家 超1.5亿件商品

软件架构设计 大型技术架构与业务架构融合之道 网络技术 余春龙 新华正版

自成一派的架构设计方论,教你体系化的架构设计思维

48.2 6.1折 79 全新

库存14件

湖南长沙
认证卖家担保交易快速发货售后保障

作者余春龙

出版社电子工业出版社

ISBN9787121356032

出版时间2019-01

版次1

装帧平装

开本其他

页数256页

字数321.5千字

定价79元

货号xhwx_1201831994

上书时间2023-08-29

语欣书店

三年老店
已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
正版特价新书
商品描述
主编:

"揭秘互联网高并发、高可用、可扩展架构核心技术囊括计算机功底、技术架构、业务架构、职业发展四大维度,建立系统的架构设计方论诠释技术架构与业务架构的融合方"

目录:

目    录

部分  什么是架构
章  五花八门的架构师职业2
1.1  架构师职业分类2
1.2  架构的分类2

第2章  架构的道与术5
2.1  何为道,何为术5
2.2  道与术的辩证关系6
第2部分  计算机功底

第3章  语言10
3.1  层出不穷的编程语言10
3.2  精通一门语言10

第4章  作系统12
4.1  缓冲i/o和直接i/o12
4.2  内存映射文件与零拷贝14
4.2.1  内存映射文件14
4.2.2  零拷贝15
4.3  网络i/o模型17
4.3.1  实现层面的网络i/o模型17
4.3.2  reactor模式与preactor模式20
4.3.3  select、epoll的lt与et20
4.3.4  服务器编程的1+n+m模型22
4.4  进程、线程和协程24
4.5  无锁(内存屏障与cas)27
4.5.1  内存屏障27
4.5.2  cas30

第5章  网络31
5.1   1.031
5.1.1   1.0的问题31
5.1.2  keep-alive机制与content-length属31
5.2   1.132
5.2.1  连接复用与chunk机制32
5.2.2  pipeline与head-of-line blocking问题33
5.2.3  /2出现之前的能提升方34
5.2.4  “一来多回”问题35
5.2.5  断点续传36
5.3  /236
5.3.1  与 1.1的兼容37
5.3.2  二进制分帧37
5.3.3  头部压缩39
5.4  ssl/tls39
5.4.1  背景39
5.4.2  对称加密的问题40
5.4.3  双向非对称加密41
5.4.4  单向非对称加密42
5.4.5  中间人攻击43
5.4.6  数字与认证中心44
5.4.7  根与ca信任链45
5.4.8  ssl/tls协议:四次握手47
5.5  s48
5.6  tcp/udp49
5.6.1  可靠与不可靠49
5.6.2  tcp的“”连接(状态机)51
5.6.3  三次握手(网络2将军问题)53
5.6.4  四次挥手54
5.7  quic56
5.7.1  不丢包(raid5算和raid6算)57
5.7.2  更少的rtt58
5.7.3  连接迁移58

第6章  数据库59
6.1  范式与反范式59
6.2  分库分表59
6.2.1  为什么要分60
6.2.2  分布式id生成服务60
6.2.3  拆分维度的选择60
6.2.4  join查询问题61
6.2.5  分布式事务61
6.3  b+树62
6.3.1  b+树逻辑结构62
6.3.2  b+树物理结构63
6.3.3  非主键索引65
6.4  事务与锁66
6.4.1  事务的四个隔离级别66
6.4.2  悲观锁和乐观锁67
6.4.3  死锁检测71
6.5  事务实现之1:redo log72
6.5.1  write-ahead73
6.5.2  redo log的逻辑与物理结构74
6.5.3  physiological logging75
6.5.4  i/o写入的原子(double write)76
6.5.5  redo log block结构77
6.5.6  事务、lsn与log block的关系78
6.5.7  事务rollback与崩溃恢复(aries算)80
6.6  事务实现之2:undo log86
6.6.1  undo log是否需要86
6.6.2  undo log(mvcc)88
6.6.3  undo log不是log89
6.6.4  undo log与redo log的关联90
6.6.4  各种锁91
6.7  binlog与主从复制94
6.7.1  binlog与redo log的主要差异94
6.7.2  xa ? binlog与redo log一致问题95
6.7.3  三种主从复制方式96
6.7.3  并行复制97
第7章  框架、软件与中间件99
7.1  对生态体系的认知99
7.2  框架99
7.3  软件与中间件100

第3部分  技术架构之道
第8章  高并发问题104
8.1  问题分类104
8.1.1  侧重于“高并发读”的系统104
8.1.2  侧重于“高并发写”的系统105
8.1.3  同时侧重于“高并发读”和“高并发写”的系统106
8.2  高并发读108
8.2.1  策略1:加缓存108
8.2.2  策略2:并发读109
8.2.3  策略3:重写轻读110
8.2.4  结:读写分离(cqrs架构)113
8.3  高并发写114
8.3.1  策略1:数据分片114
8.3.2  策略2:任务分片115
8.3.3  策略3:异步化117
8.3.4  策略4:批量123
8.3.5  策略5:串行化+多进程单线程+异步i/o124
8.4  容量规划125
8.4.1  吞吐量、响应时间与并发数125
8.4.2  压力测试与容量评估127

第9章  高可用与稳定129
9.1  多副本129
9.2  隔离、限流、熔断和降级130
9.3  灰度发布与回滚135
9.4  监控体系与志报警136

0章  事务一致138
10.1  随处可见的分布式事务问题138
10.2  分布式事务解决方案汇139
10.2.1  2pc139
10.2.2  终一致(消息中间件)141
10.2.3  tcc145
10.2.4  事务状态表+调用方重试+接收方幂等147
10.2.5  对账148
10.2.6  妥协方案:弱一致+基于状态的补偿149
10.2.7  妥协方案:重试+回滚+报警+人工修复151
10.2.8  结152

1章  多副本一致153
11.1  高可用且强一致到底有多难153
11.1.1  kafka的消息丢失问题153
11.1.2  kafka消息错乱问题156
11.2  paxos算解析158
11.2.1  paxos解决什么问题158
11.2.2  复制状态机161
11.2.3  一个朴素而深刻的思想163
11.2.4  basic paxos算164
11.2.5  multi paxos算167
11.3  raft算解析169
11.3.1  为“可理解”而设计169
11.3.2  单点写入170
11.3.3  志结构171
11.3.4  阶段1:leader选举174
11.3.5  阶段2:志复制176
11.3.6  阶段3:恢复阶段177
11.3.7  安全保证177
11.4  zab算解析180
11.4.1  replicated state machine vs. primary-backup system180
11.4.2  zd182
11.4.3  “序”:乱序提交 vs. 顺序提交182
11.4.4  leader选举:fle算184
11.4.5  正常阶段:2阶段提交186
11.4.6  恢复阶段186
11.5  三种算对比187

2章  cap理论189
12.1  cap理论的误解189
12.2  现实世界不存在“强一致”(pacelc理论)190
12.3  典型案例:分布式锁192

第4部分  业务架构之道
3章  业务意识196
13.1  产品经理vs.需求分析师196
13.2  什么叫作一个“业务”198
13.3  “业务架构”的双重含义199
13.4  “业务架构”与“技术架构”的区分200

4章  业务架构思维202
14.1  “伪”分层202
14.2  边界思维204
14.3  系统化思维205
14.4  利益相关者分析206
14.5  非功能需求分析(以终为始)208
14.6  视角(横看成岭侧成峰)209
14.7  抽象210
14.8  建模213
14.9  正交分解215

5章  技术架构与业务架构的融合218
15.1  各式各样的方论218
15.2  为什么要“领域驱动”218
15.3  “业务流程”不等于“系统流程”221
15.4  为何很难设计一个好的领域模型222
15.5  领域驱动设计与微服务架构的“合”223
15.6  领域驱动设计与读写分离(cqrs)224
15.7  业务分层架构模式225
15.8  管道―过滤器架构模式226
15.9  状态机架构模式226
15.10  业务切面/业务闭环架构模式228

第5部分  从架构到技术管理
6章  个人素质的提升232
16.1  能力模型232
16.2  影响力的塑造234

7章  团队能力的提升237
17.1  不确定与风险把控237
17.2  以价值为中心的管理239
17.3  团队培养241

内容简介:

本书系统化地阐述了技术架构与业务架构的方论与实践。本书内容分为5大部分,部分从行业背景出发定义架构的概念与范畴;第2部分细致讨论架构所需的计算机功底,包括编程语言、作系统、数据库、网络、框架、中间件;第3部分从高并发、高可用、稳定、分布式事务、paxos/raft一致算、cap理论等方面探讨技术架构;第4部分从业务架构思维、微服务、领域驱动设计、技术架构与业务架构融合的角度探讨业务架构;第5部分从个人素质、团队能力两大方面,诠释从技术到管理的转变方。通过本书,读者可以对大型业务系统的架构方论有全局的认识,同时对软件架构的核心能力有深刻的理解,对个人的技术成长起到的借鉴作用。本书不仅适合工程师、架构师阅读,也适合企业系统开发人员在内的软件开发从业人员阅读。

作者简介:

余春龙,中科院软件所计算机硕士。热衷于高并发高可用架构、业务建模、领域驱动设计,在十年的工作中,经历过游戏、社交、广告、电商等各种类型的项目,积累了较丰富的工程经验。

精彩书评:

"软件架构设计的本质,是对问题域空间反复运用演绎、抽象、归纳等方,进而找到适合当前阶段的设计方案的过程。既要虑软件随业务发展的横纵向扩展,也要虑软件自身的可行、稳定和可维护等技术因素。本书作者结合了自身多年架构设计实践经验和多个业界经典案例,帮助读者理解、结了许多实用的软件架构设计思路,以及软件设计过程中经常遇到的“道、术、虚、实”。白沿松(花名太阳)阿里巴巴不错技术专家不同于一些白皮书、技术规范或国外大神的译作,本书从技术出发,所述内容精而不杂,从技术功底到业务场景分析,特别是处处结合作者自身感悟,向广大读者展示了如何建立一种成体系的思维方式和学方,让方论不再晦涩难懂。无论工作三五年的程序员,还是工作八九年的老手,看这本书都会有收获,有共鸣。桂艳军某金融科技公司技术监架构师,从事软件行业几年的代码工匠皆可称之。然而,从基本到底层算,再到中间应用、上层模块架构,甚至更往上一层的业务领域建模,能尽数领悟者不多见,能领悟且能实战结者甚少,能结又能循序渐进娓娓道来者,更是凤毛麟角。作者将十年工作经验凝聚于本书,若读者能够细细研读,仔细领会,并能结合自身业务和领域,学一而实践三,必将收益良多。谭国富腾讯不错工程师"

—  没有更多了  —

以下为对购买帮助不大的评价

正版特价新书
此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP