书籍作者:网易云基础服务架构团队 | ISBN:9787121315169 |
书籍语言:简体中文 | 连载状态:全集 |
电子书格式:pdf,txt,epub,mobi,azw3 | 下载次数:1576 |
创建日期:2021-02-14 | 发布日期:2021-02-14 |
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板 |
针对企业如何采用云原生架构实现高效的产品迭代能力、支持互联网业务健康发展,《云原生应用架构实践》总结了一套可行的方法论。书中详解了云原生应用的内涵和要点,对实现云原生应用面临的功能和非功能(高性能、高可用、可扩展、安全性、高可靠等)的不同阶段需求和实现方案进行了较为完整的梳理。内容涵盖了系统工程化、高性能数据库、分布式数据库、DevOps、微服务架构、服务化测试、多机房架构等方面,既有业务挑战分析,也有架构实践指导,并通过实战案例加以诠释。
本书适合希望采用云计算帮助企业实现业务提升的 CTO、CIO、架构师等群体。
网易云基础服务架构团队,负责网易云基础服务平台建设,包括计算、网络、存储、CDN、数据库等服务,以及自动化平台的架构和实践,该平台支撑了网易内部95%的互联网产品。团队在互联网产品开发和规范化的系统建设上有丰富的经验,对互联网业务需求、系统设计、开发、测试、运维和调优等方面有独到的经验和理解。
祝一切顺利!
网易云平台开发一线的主力,为你讲述云原生的技术体系,展示从单体到服务化架构的演进。
从互联网、移动互联网到云计算、大数据、人工智能,再到虚拟现实/增强现实,十多年来,信息技术的日新月异催生了不断涌现的互联网新业态,也推动了传统行业投身于数字化创新的浪潮。此时此刻,机器取代人类的说法固然夸张,却也真实地反映了新技术应用对产业带来的冲击。
全球顶级商业机构都是能够把握技术创新成果的企业;而对技术运用不当的企业,即便起点与前者一致,或许也曾风光一时,但最终还是步履维艰,甚至烟消云散。决定能否与技术趋势同行的一个核心因素就是技术架构。如果说商业模式是商业组织的灵魂,那么架构就是灵魂的根基。最典型的例子就是电商618、双11大促,流量爆发之下如何保障整个商品交易流程的体验,对系统设计和运维保障都是巨大的考验,这也推动了技术的进步。当前的大促活动依然让电商企业如履如临,然而挑战难度已经不如七八年前,这就是架构演进趋于成熟的表现,充分利用云计算理念的“互联网架构”由此为业界所推崇。
综合考虑IT资产、业务规模、发展阶段、人才储备及投资成本,不同企业需要的互联网架构并不完全一样,譬如初创公司考虑百万级并发可能不合时宜,然而为长远计,想跟上发展迅速、爆发力惊人的互联网业务,架构设计需要既能满足当前业务需求,又具备快速升级支撑下一个发展阶段的能力。企业如何正确驾驭架构的设计和演进?有哪些通用的成熟经验可供借鉴?业界对此不乏零星的讨论,但企业仍缺乏系统的、可指导实践的参考资料。
本书是网易云基础服务架构团队根据网易集团的十余年实践,结合社区优秀案例总结而成的互联网架构演进指南。2006年,怀着储备互联网技术和孵化新业务的初衷,网易杭州研究院扬帆起航,及至今日在两个方向上都有不俗的成绩,一端是分布式、云计算、大数据、人工智能、增强现实,一端是教育、电商、金融、游戏,这一切都是构建在千锤百炼的互联网架构之上的,这就是同时满足功能性需求、非功能性需求和产品快速迭代需求的云原生架构。网易云希望把这些经验分享给业界,与各行各业一起践行中国云计算。
全书共5章,以商业组织的互联网业务成长为主线,着眼于业务需求,清晰地剖析互联网架构的挑战,云原生架构的特征、构成和解决的问题,以及架构演进的路径,并通过案例对设计原则和实践加以诠释。通过阅读本书,架构师能够借鉴网易十余年的经验结晶,无须反复试验,即可快速设计符合互联网业务场景需求的架构,而有一定基础的读者朋友也能更加透彻地理解和规划未来的方向。
全书由尧飘海统筹构思,网易云基础服务架构团队成员参与写作,书中部分图片脱胎于社区文档或官方宣传资料。第1章以宏观视角简明地解析互联网业务挑战及架构演进要点;第2章介绍开始搭建业务系统时需要的项目版本管理工具、以Docker为代表的容器技术,以及常见语言的工程化构建方式,并结合实战示例给予完整展现;第3章针对访问流量不是很大的业务起步阶段,讲述如何做好技术选型,实现一个支持快速迭代、高可用、安全的应用服务端;第4章介绍如何解决业务高速成长阶段的可扩展性、性能、系统集成与交互、数据可靠性等挑战;第5章以分布式定时任务和分布式锁系统的实现为例,介绍分布式服务应用挑战和架构方法,重点解析了微服务架构、分布式数据一致性和同城多活的实践。
全书内容分别由尧飘海、焦智慧、王新勇、张小刚和冯常健主笔,黄庆兵、郭忆、乔安然、何李夫、孙建良、刘发明、沈明星、崔晓晴、易庭、祝剑锋、姜政冬、朱凌墨等网易云架构师和工程师参与了写作,插图由李倩倩和纪桂莲支持完成。
本书的付梓要特别感谢电子工业出版社的符隆美编辑,她帮助我们及时地解决了遇到的各种问题。
限于作者的精力与能力,书中难免出现一些疏漏之处,请广大读者不吝指正,并予以包涵,我们会在再版中修正。
引子 1
第1章 互联网系统架构的挑战 2
1.1 云应用架构技术发展 4
1.2 云平台下架构的不同点 5
1.2.1 开发模式的区别 6
1.2.2 交付模式的区别 7
1.2.3 架构设计的区别 8
1.3 云原生应用架构 10
1.4 架构演化发展历程 21
1.4.1 初创期架构 22
1.4.2 快速成长期架构 24
1.4.3 分布式服务架构 26
1.5 云计算服务介绍 29
1.6 云计算解决方案 31
1.7 案例概述 34
1.7.1 背景介绍 34
1.7.2 环境要求 36
1.7.3 项目构建 36
1.7.4 项目运行 36
1.7.5 相关技术介绍 37
小结 40
第2章 从0到1工程实践 41
2.1 工程化 41
2.1.1 工程模板 41
2.1.2 模块化 45
2.1.3 工程化构建 50
2.1.4 代码规范及检查 53
2.1.5 代码版本管理 54
2.1.6 环境划分 61
2.2 基于容器工程化 62
2.2.1 Docker及作用 63
2.2.2 Docker镜像及操作 66
2.2.3 Docker容器及操作 73
2.2.4 基于容器工程化 77
2.3 实战示例 78
小结 84
第3章 初创期应用架构实践 85
3.1 技术选型 85
3.1.1 业务框架选型 85
3.1.2 结构化数据存储 92
3.1.3 缓存选型 102
3.1.4 静态资源存储 106
3.2 架构实践 109
3.2.1 快速迭代 109
3.2.2 高可用与负载均衡 111
3.2.3 交付与部署 117
3.2.4 Web应用安全 119
3.3 应用监控 127
3.3.1 应用监控指标 127
3.3.2 应用进程监控 128
3.3.3 操作系统监控 129
小结 136
第4章 快速成长期应用架构实践 137
4.1 关键业务需求 137
4.1.1 计数与排序 137
4.1.2 秒杀 146
4.1.3 全文检索 149
4.1.4 日志收集 154
4.2 架构实践 156
4.2.1 前端系统扩展 157
4.2.2 无状态服务设计 157
4.2.3 在线水平扩展 160
4.2.4 后端系统扩展 163
4.2.5 系统通信 173
4.2.6 消息中间件 176
4.3 系统优化 181
4.3.1 静态资源分离 182
4.3.2 数据库调优 185
4.3.3 系统高可用 193
4.4 应用诊断 200
4.4.1 应用健康检查 200
4.4.2 性能问题诊断 204
4.4.3 基于日志的故障诊断 210
4.5 数据库诊断 214
4.6 DevOps 223
4.6.1 持续集成 224
4.6.2 持续交付 227
4.6.3 灰度发布 229
4.6.4 大应用编排 231
4.7 安全设计 246
4.7.1 入侵检测 247
4.7.2 防劫持攻击 249
小结 255
第5章 稳定期服务化应用架构实践 256
5.1 业务拆分 256
5.2 统一配置中心 259
5.3 分布式定时任务 261
5.3.1 分布式定时任务设计 262
5.3.2 业界流行的开源框架 264
5.4 分布式锁系统 274
5.5 微服务化架构 277
5.5.1 服务发现 279
5.5.2 服务治理 302
5.5.3 微服务框架 307
5.5.4 服务编排 313
5.5.5 微服务测试 321
5.6 分布式数据一致性 333
5.6.1 CAP和BASE理论 333
5.6.2 一致性模型 336
5.6.3 典型的解决方案 337
5.7 同城多活 344
5.7.1 应用同城多活 345
5.7.2 跨AZ负载均衡 347
5.8 故障诊断 348
小结 353
参考文献 354
技术术语 356
第一章比较系统的讨论了云原生相关的话题,总算对云原生有一定的了解,第二章是工程实践和规范上面的介绍,第三章里面的诊断系统介绍能满足常用的情况,对更种内容希望有更深入的介绍,后面的还没有看完,后面再评论吧。
2017-07-25