网站颜色:

软件架构设计 大型网站技术架构与业务架构融合之道 余春龙 著 网络技术 专业科技 电子工业出版社 9787121356032

  • 产品名称:软件架构设计-大型网站技...
  • 品牌:电子工业出版社
  • 书名:软件架构设计-大型网站技术架构与业务架构融合之道
  • 作者:余春龙
  • 定价:79.00元
  • 书名:软件架构设计-大型网站技术架构与业务架构融合之道
  • 是否是套装:否
  • 出版社名称:电子工业出版社

软件架构设计 大型网站技术架构与业务架构融合之道

作  者:余春龙 著
定  价:79
出 版 社:电子工业出版社
出版日期:(咨询特价)年01月01日
页  数:256
装  帧:平装
ISBN:32
主编推荐

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

目录
目录部分什么是架构章五花八门的架构师职业 21.1架构师职业分类 21.2架构的分类 2第2章架构的道与术 52.1何为道,何为术 52.2道与术的辩证关系 6第2部分计算机功底第3章语言 103.1层出不穷的编程语言 103.2精通一门语言 10第4章操作系统 124.1缓冲I/O和直接I/O 124.2内存映射文件与零拷贝 144.2.1内存映射文件 144.2.2零拷贝 154.3网络I/O模型 174.3.1实现层面的网络I/O模型 174.3.2Reactor模式与Preactor模式 204.3.3select、epoll的LT与ET 204.3.4服务器编程的1+N+M模型 224.4进程、线程和协程 244.5无锁(内存屏障与CAS) 274.5.1内存屏障 274.5.2CAS 30第5章网络 315.1HTTP 1.0 315.1.1HTTP 1.0的问题 315.1.2Keep-Alive机制与Content-Length属性 315.2HTTP 1.1 325.2.1连接复用与Chunk机制 325.2.2Pipeline与Head-of-line Blocking问题 335.2.3HTTP/2出现之前的性能提升方法 345.2.4“一来多回”问题 355.2.5断点续传 365.3HTTP/2 365.3.1与HTTP 1.1的兼容 375.3.2二进制分帧 375.3.3头部压缩 395.4SSL/TLS 395.4.1背景 395.4.2对称加密的问题 405.4.3双向非对称加密 415.4.4单向非对称加密 425.4.5中间人攻击 435.4.6数字证书与证书认证中心 445.4.7根证书与CA信任链 455.4.8SSL/TLS协议:四次握手 475.5HTTPS 485.6TCP/UDP 495.6.1可靠与不可靠 495.6.2TCP的“假”连接(状态机) 515.6.3三次握手(网络2将军问题) 535.6.4四次挥手 545.7QUIC 565.7.1不丢包(Raid5算法和Raid6算法) 575.7.2更少的RTT 585.7.3连接迁移 58第6章数据库 596.1范式与反范式 596.2分库分表 596.2.1为什么要分 606.2.2分布式ID生成服务 606.2.3拆分维度的选择 606.2.4Join查询问题 616.2.5分布式事务 616.3B+树 626.3.1B+树逻辑结构 626.3.2B+树物理结构 636.3.3非主键索引 656.4事务与锁 666.4.1事务的四个隔离级别 666.4.2悲观锁和乐观锁 676.4.3死锁检测 716.5事务实现原理之1:Redo Log 726.5.1Write-Ahead 736.5.2Redo Log的逻辑与物理结构 746.5.3Physiological Logging 756.5.4I/O写入的原子性(Double Write) 766.5.5Redo Log Block结构 776.5.6事务、LSN与Log Block的关系 786.5.7事务Rollback与崩溃恢复(ARIES算法) 806.6事务实现原理之2:Undo Log 866.6.1Undo Log是否一定需要 866.6.2Undo Log(MVCC) 886.6.3Undo Log不是Log 896.6.4Undo Log与Redo Log的关联 906.6.4各种锁 916.7Binlog与主从复制 946.7.1Binlog与Redo Log的主要差异 946.7.2内部XA ? Binlog与Redo Log一致性问题 956.7.3三种主从复制方式 966.7.3并行复制 97第7章框架、软件与中间件 997.1对生态体系的认知 997.2框架 997.3软件与中间件 100第3部分技术架构之道第8章高并发问题 1048.1问题分类 1048.1.1侧重于“高并发读”的系统 1048.1.2侧重于“高并发写”的系统 1058.1.3同时侧重于“高并发读”和“高并发写”的系统 1068.2高并发读 1088.2.1策略1:加缓存 1088.2.2策略2:并发读 1098.2.3策略3:重写轻读 1108.2.4总结:读写分离(CQRS架构) 1138.3高并发写 1148.3.1策略1:数据分片 1148.3.2策略2:任务分片 1158.3.3策略3:异步化 1178.3.4策略4:批量 1238.3.5策略5:串行化+多进程单线程+异步I/O 1248.4容量规划 1258.4.1吞吐量、响应时间与并发数 1258.4.2压力测试与容量评估 127第9章高可用与稳定性 1299.1多副本 1299.2隔离、限流、熔断和降级 1309.3灰度发布与回滚 1359.4监控体系与日志报警 1360章事务一致性 13810.1随处可见的分布式事务问题 13810.2分布式事务解决方案汇总 13910.2.12PC 13910.2.2最终一致性(消息中间件) 14110.2.3TCC 14510.2.4事务状态表+调用方重试+接收方幂等 14710.2.5对账 14810.2.6妥协方案:弱一致性+基于状态的补偿 14910.2.7妥协方案:重试+回滚+报警+人工修复 15110.2.8总结 1521章多副本一致性 15311.1高可用且强一致性到底有多难 15311.1.1Kafka的消息丢失问题 15311.1.2Kafka消息错乱问题 15611.2Paxos算法解析 15811.2.1Paxos解决什么问题 15811.2.2复制状态机 16111.2.3一个朴素而深刻的思想 16311.2.4Basic Paxos算法 16411.2.5Multi Paxos算法 16711.3Raft算法解析 16911.3.1为“可理解性”而设计 16911.3.2单点写入 17011.3.3日志结构 17111.3.4阶段1:Leader选举 17411.3.5阶段2:日志复制 17611.3.6阶段3:恢复阶段 17711.3.7安全性保证 17711.4Zab算法解析 18011.4.1Replicated State Machine vs. Primary-Backup System 18011.4.2zxid 18211.4.3“序”:乱序提交 vs. 顺序提交 18211.4.4Leader选举:FLE算法 18411.4.5正常阶段:2阶段提交 18611.4.6恢复阶段 18611.5三种算法对比 1872章CAP理论 18912.1CAP理论的误解 18912.2现实世界不存在“强一致性”(PACELC理论) 19012.3典型案例:分布式锁 192第4部分业务架构之道3章业务意识 19613.1产品经理vs.需求分析师 19613.2什么叫作一个“业务” 19813.3“业务架构”的双重含义 19913.4“业务架构”与“技术架构”的区分 2004章业务架构思维 20214.1“伪”分层 20214.2边界思维 20414.3系统化思维 20514.4利益相关者分析 20614.5乏能性需求分析(以终为始) 20814.6视角(横看成岭侧成峰) 20914.7抽象 21014.8建模 21314.9正交分解 2155章技术架构与业务架构的融合 21815.1各式各样的方法论 21815.2为什么要“领域驱动” 21815.3“业务流程”不等于“系统流程” 22115.4为何很难设计一个好的领域模型 22215.5领域驱动设计与微服务架构的“合” 22315.6领域驱动设计与读写分离(CQRS) 22415.7业务分层架构模式 22515.8管道―过滤器架构模式 22615.9状态机架构模式 22615.10业务切面/业务闭环架构模式 228第5部分从架构到技术管理6章个人素质的提升 23216.1能力模型 23216.2影响力的塑造 2347章团队能力的提升 23717.1不确定性与风险把控 23717.2以价值为中心的管理 23917.3团队培养 241
内容虚线

内容简介

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

作者简介

余春龙 著

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

摘要

"当我在撰写本书时,脑海中曾浮现出当初上学期间一个劲儿地啃UML建模、软件架构设计书籍的情景。对于一个没有太多项目经验的人来说有点可笑,但也正是这种“过早熏陶”,使得我之后在工作中接手一个个项目时,会“多想”一些架构方面的事情。为什么说是“多想”了呢?因为无论在企业面试还是日常工作中,人们更多谈论的是语言、数据结构、算法、操作系统原理,框架或中间件的使用方式、原理等“硬”性的内容,因为这些“硬”性的内容比较容易表述,其中学问的深浅也容易衡量。而对于软件建模、架构设计等“软”性的内容,就不容易衡量了。人们都知道它们很重要,但又说不清楚里面到底包含了哪些学问,所以谈论这些内容时通常都比较“虚”,最终导致很少从方法论的角度去讲,而是在项目中遇到问题时再具体解决,属于实用主义思维的做法。另一方面,随着互联网技术的发展,很多大型网站或系统要处理海量的用户访问,需要解决高并发、高可用和由此带来......

辽宁出版集团图书专营店热门设计联盟服务商