您好,欢迎光临有路网!
高性能架构之道:分布式、并发编程、数据库调优、缓存设计、IO模型、前端优化、高可用
QQ咨询:
有路璐璐:

高性能架构之道:分布式、并发编程、数据库调优、缓存设计、IO模型、前端优化、高可用

  • 作者:易哥
  • 出版社:电子工业出版社
  • ISBN:9787121404870
  • 出版日期:2021年03月01日
  • 页数:0
  • 定价:¥89.00
  • 猜你也喜欢

    分享领佣金
    手机购买
    城市
    店铺名称
    店主联系方式
    店铺售价
    库存
    店铺得分/总交易量
    发布时间
    操作

    新书比价

    网站名称
    书名
    售价
    优惠
    操作

    图书详情

    内容提要
    本书是一本理论联系实际的软件架构设计指导书,旨在帮助读者完成高性能软件系统的架构设计工作。书中涉及分布式、并发编程、数据库调优、缓存、IO、前端性能优化等方面的理论知识,并在理论知识的基础上推导其实践技巧。本书*后还运用书中知识完成了一个实际软件项目的架构设计工作。本书适合软件架构师、工程师、学生阅读,以帮助其完善软件开发知识体系和提升其软件架构设计能力。
    目录
    第1章 高性能架构 001 1.1 软件架构 001 1.2 软件的质量 003 1.3 高性能概述 004 1.4 软件性能指标 005 1.4.1 吞吐量 006 1.4.2 并发数 006 1.4.3 平均响应时间 007 1.4.4 可靠性指标 008 1.5 性能指标之间的关系 009 1.5.1 并发数对吞吐量的影响 009 1.5.2 并发数对平均响应时间的影响 011 1.5.3 平均响应时间对并发数的影响 012 1.5.4 可靠性指标与其他指标的关系 013 1.6 高性能架构总结 013 第2章 分流设计 014 2.1 内容分发网络 014 2.1.1 内容分发网络的结构 015 2.1.2 内容分发网络的原理 017 2.2 多地址直连 019 2.3 反向代理 021 第3章 服务并行设计 026 3.1 并行与并发 026 3.2 集群系统 028 3.2.1 无状态的节点集群 028 3.2.2 单一服务节点集群 029 3.2.3 信息共享的节点集群 031 3.2.4 信息一致的节点集群 032 3.3 分布式系统 034 3.4 微服务系统 036 第4章 运算并发 038 4.1 多进程 038 4.2 多线程 039 4.2.1 线程的状态及转换 039 4.2.2 多线程的应用场景 041 4.2.3 多线程的创建 042 4.2.4 线程池 046 4.2.5 多线程资源协作 050 4.2.6 多线程进度协作 056 4.3 多协程 069 4.4 运算并发总结 072 第5章 输入输出设计 074 5.1 概念梳理 074 5.1.1 同步与异步 074 5.1.2 阻塞与非阻塞 075 5.2 IO模型 077 5.3 IO模型的层级关系 078 5.4 阻塞式IO模型 079 5.5 非阻塞式IO模型 081 5.6 信号驱动式IO模型 082 5.7 复用式IO模型 083 5.8 异步式IO模型 086 5.9 输入输出模型总结 088 第6章 数据库设计与优化 090 6.1 数据库设计概述 090 6.2 关系型数据库设计 091 6.2.1 设计范式介绍 093 6.2.2 反范式设计 101 6.3 索引原理与优化 102 6.3.1 索引的原理 103 6.3.2 索引生效分析 107 6.3.3 索引的使用 109 6.3.4 索引的利弊 116 6.4 数据库引擎 116 6.5 数据库锁 117 6.5.1 乐观锁 118 6.5.2 悲观锁 119 6.6 死锁 120 6.7 事务 122 6.7.1 事务并发导致的问题 123 6.7.2 事务隔离级别 124 6.7.3 自建事务 126 6.8 巨量数据的优化 128 6.8.1 表分区 128 6.8.2 分库分表 132 6.8.3 读写分离 134 6.9 非传统数据库 138 6.9.1 内存数据库 139 6.9.2 列存储数据库 140 6.9.3 面向对象数据库 140 6.9.4 文档数据库 140 6.9.5 图数据库 141 6.10 数据库中间件 141 第7章 缓存设计 143 7.1 缓存的收益 143 7.2 缓存的键与值 145 7.2.1 缓存的键 145 7.2.2 缓存的值 149 7.3 缓存的更新机制 151 7.3.1 时效性更新机制 151 7.3.2 主动更新机制 152 7.4 缓存的清理机制 155 7.4.1 时效式清理 156 7.4.2 数目阈值式清理 157 7.4.3 非强引用式清理 161 7.4.4 清理策略使用实践 164 7.5 缓存的风险点 165 7.5.1 缓存穿透 165 7.5.2 缓存雪崩 166 7.5.3 缓存击穿 166 7.5.4 缓存预热 167 7.6 缓存的位置 168 7.6.1 客户端缓存 169 7.6.2 静态缓存 172 7.6.3 服务缓存 173 7.6.4 数据库缓存 173 7.7 写缓存 174 7.7.1 写缓存的收益问题 175 7.7.2 写缓存实践 175 第8章 可靠性设计 177 8.1 软件可靠性概述 177 8.2 软件可靠性指标 178 8.2.1 失效概率 178 8.2.2 失效强度 179 8.2.3 失效�� 179 8.3 模块连接方式与可靠性 179 8.3.1 串联系统的可靠性 179 8.3.2 并联系统的可靠性 180 8.3.3 冗余系统的可靠性 180 8.3.4 模块连接方式的可靠性讨论 181 8.4 软件失效模型 181 8.5 可靠性设计 182 8.5.1 消除单点依赖 183 8.5.2 化串联为并联 183 8.5.3 采用集群 184 第9章 应用保护 185 9.1 应用保护概述 185 9.2 隔离 187 9.3 限流 189 9.3.1 时间窗限流法 189 9.3.2 漏桶限流法 190 9.3.3 令牌限流法 192 9.4 降级 193 9.5 熔断 196 9.6 恢复 198 第10章 前端高性能 200 10.1 前端工作分析 200 10.1.1 前端加载过程 200 10.1.2 前端性能分析 201 10.2 资源下载优化 203 10.2.1 资源压缩 203 10.2.2 减少请求 205 10.2.3 资源缓存 210 10.3 页面解析优化 214 10.3.1 顺应解析流程 214 10.3.2 应用新型前端框架 216 10.4 懒加载 216 10.5 预操作 217 第11章 架构设计理论 219 11.1 软件架构风格 219 11.1.1 管道过滤器架构风格 220 11.1.2 面向对象架构风格 220 11.1.3 基于组件的架构风格 221 11.1.4 事件驱动架构风格 221 11.1.5 分层架构风格 221 11.1.6 C/S架构风格 222 11.1.7 三层C/S架构风格 223 11.1.8 B/S架构风格 224 11.2 软件生命周期 225 11.2.1 需求阶段 226 11.2.2 模型设计 227 11.2.3 概要设计 228 11.2.4 详细设计 228 11.2.5 质量指标设计 229 11.2.6 方案预研 229 11.2.7 软件开发 229 第12章 高性能架构实践 231 12.1 需求概述 231 12.2 权限系统的相关理论 234 12.2.1 权限模型 234 12.2.2 访问控制方式 240 12.3 模型设计 241 12.3.1 模型调研 241 12.3.2 模型应用 242 12.4 概要设计 249 12.5 数据层详细设计 253 12.5.1 RBAC数据表的范式设计 253 12.5.2 RBAC数据表的反范式设计 254 12.5.3 RBAC数据表的*终设计 255 12.5.4 MatrixAuth管理类数据表设计 257 12.5.5 MatrixAuth的数据层结构 259 12.6 缓存详细设计 260 12.7 服务端详细设计 261 12.7.1 数据源动态切换 261 12.7.2 数据冗余的一致性保证 263 12.7.3 服务端的操作接口 263 12.8 客户端详细设计 265 12.8.1 可控角色的权限验证 265 12.8.2 自由角色的权限验证 267 12.8.3 用户信息、角色关联信息推送 268 12.9 MatrixAuth项目实践总结 268 12.9.1 MatrixAuth的高性能设计 268 12.9.2 需求完成度分析 270 12.9.3 MatrixAuth的使用简介 270 参考文献 273

    与描述相符

    100

    北京 天津 河北 山西 内蒙古 辽宁 吉林 黑龙江 上海 江苏 浙江 安徽 福建 江西 山东 河南 湖北 湖南 广东 广西 海南 重庆 四川 贵州 云南 西藏 陕西 甘肃 青海 宁夏 新疆 台湾 香港 澳门 海外