具体描述
PaaS(平台即服务)正在对Web和移动开发者产生巨大的吸引力。但是,随着新PaaS供应商的出现,以及现有供应商对其产品特性的持续升级,要知晓PaaS可以提供什么就成为一件比较困难的事情。本书从开发者的视角对PaaS进行了透彻介绍,带领读者领略不同的PaaS模型,并且对Google App Engine、Windows Azure、Heroku、Cloud Foundry等供应商的不同类别的服务进行分解和分析。
《PaaS程序设计》全面展示PaaS如何帮助你专注于创造性的应用开发,而不是将时间花费在担心那些技术的运维问题上,不管你是创业家还是大型企业研发团队的成员,都会从中受益。
介绍云从IaaS和DevOps到PaaS的发展轨迹。
学习如何通过PaaS将共享Web托管的简便性和专有主机托管的可控性结合在一起。
探讨可移植和不可移植PaaS方案的利弊。
将最佳实践应用于迁移遗留代码到PaaS,并且理解这个过程中可能遇到的挑战。
从头开始为PaaS编写REST风格的元服务。
采用PaaS构建移动应用,并且通过后端服务进行扩展。
审视主流PaaS供应商当前可以提供的核心服务。
了解PaaS不能发挥作用的场合。
作者简介
Lucas Carlson创建了AppFog,这是一家采用Cloud Foundry的PaaS公司,该公司于2013年被CenturyLink收购。Lucas是一位有着10年开发经验的专业开发者,专注于Ruby on Rails的开发工作。Lucas还与他人共同编写了《Ruby大全》(http://shop.oreilly.com/product/9780596523695.do)。他还用不同的编程语言编写了数十个库,并且为其他很多库共享过代码,包括Rails以及RedCloth。他的个人网站为rufy.com(http://rufy.com/)。
目录信息
第1章 开发者的云 7
1.1 开发者的困境 8
1.2 云能为创新做什么 8
1.3 云:发展历程简介 9
1.4 云的核心技术 14
1.5 管理平台与产品化平台 15
1.6 云计算的承诺(或者炒作) 16
1.7 云技术的未来5年 16
1.8 兑现承诺 17
第2章 什么是PaaS 18
2.1 魔术网站 18
2.2 开发者早期的选择 19
2.3 PaaS:综合两种方式的最佳方案 24
2.4 PaaS:现代应用的虚拟工具 28
2.5 重建信心 29
第3章 PaaS类型 30
3.1 不可移植的PaaS:遵照一个模板 30
3.2 可移植性:不再繁琐 33
3.3 走向公开标准 39
第4章 遗留应用迁移到PaaS 41
4.1 初步考虑 41
4.2 概述 43
4.3 资产托管 44
4.4 会话管理 49
4.5 缓存 52
4.6 异步处理 56
4.7 SQL 57
4.8 NoSQL 58
4.9 各种陷阱 59
第5章 在PaaS上开发新应用程序 61
5.1 分解庞然大物 61
5.2 将API应用于移动开发 63
5.3 JSON和REST的出现 64
5.4 使用基于REST的元服务 69
5.5 PaaS的独特贡献 72
5.6 摩尔定律的影响力 74
第6章 PaaS上的移动应用 76
6.1 移动应用开发简史 76
6.2 未来应用 77
6.3 数据结构 78
6.4 调用移动客户端的元服务 79
6.5 PaaS如何让移动后端开发更容易 83
6.6 服务于更多用户 85
第7章 核心服务简介 86
7.1 非PaaS核心服务 86
7.2 评估PaaS服务 87
7.3 采用托管的数据库和PaaS以节省时间 88
7.4 缓存和PaaS: 冗余 92
7.5 解决Email的挑战 93
7.6 监控的重要性 94
7.7 负载测试 96
7.8 计划升级途径 96
第8章 为什么不选择PaaS 100
8.1 公共云与私有云 100
8.2 中小型公司:如何选择 101
8.3 大型企业级用户:如何选择 103
8.4 PaaS的限制 103
8.5 直面阻力 107
8.6 以长远的视角看待限制 108
第9章 PaaS的未来 109
9.1 OpenStack的影响 109
9.2 保持开发选项的开放 110
9.3 故障:开发者必须面对的最大问题 111
9.4 通过开源重新获取控制 112
9.5 最终的思考 115
第10章 资源 116
10.1 PaaS供应商 116
10.2 IaaS供应商 119
10.3 托管服务 120
10.4 将遗留应用迁移到PaaS 123
10.5 新兴PaaS应用开发 124
· · · · · · (收起)
读后感
用户评价
这本书的装帧和排版或许不是最炫酷的,但内容的扎实程度绝对是业界顶尖水准。我最欣赏的是它对“DevOps文化”与PaaS实践结合的探讨。作者并没有将DevOps视为一个孤立的工具集,而是将其视为一种软件交付的哲学,并展示了如何通过PaaS提供的能力(如自动化构建、持续集成/持续部署)来真正落地这种哲学。书中对GitOps的实践讲解尤为精彩,它展示了如何仅通过代码仓库的状态来驱动整个基础设施和应用环境的变更,这种声明式的管理方式极大地降低了人为干预带来的风险。我尝试按照书中的步骤,将团队现有的一个遗留应用迁移到新的PaaS环境中,整个过程的顺畅程度超出了我的想象,这完全归功于作者提供的详尽脚本和配置模板。这已经不是一本纯粹的“编程”书了,它更像是关于如何构建一个可持续、自愈合的软件生态系统的指南。
这本《PaaS程序设计》真是让人耳目一新,它深入浅出地剖析了平台即服务(PaaS)的本质与实践,对于我们这些长期在传统架构中摸爬滚打的开发者来说,简直是一盏指路的明灯。书中的案例分析极其详实,没有那种空泛的理论说教,而是直击痛点,比如如何优化应用的部署流程,如何利用云原生技术栈构建高可用、可伸缩的微服务。我尤其欣赏作者在介绍容器化和Serverless架构时的那种细腻笔触,不仅讲解了“是什么”,更重要的是解释了“为什么”要这样做,以及在实际项目中遇到的陷阱和规避策略。读完后,我感觉自己对云端部署的理解从“会用”提升到了“精通”,无论是Jenkins的流水线配置,还是Kubernetes的调度策略,都有了更深层次的体悟。书中的章节组织逻辑清晰,循序渐进,即便是初次接触PaaS概念的读者,也能很快跟上节奏,找到自己的学习路径。可以说,它不是一本简单的技术手册,而更像是一位经验丰富的老工程师在手把手地带你进入现代云开发的世界,强烈推荐给所有追求效率和灵活性的技术人员。
说实话,我抱着非常谨慎的态度翻开了这本关于PaaS编程的书,毕竟市面上这类技术书籍鱼龙混杂,很多都是将官方文档生搬硬套,读起来枯燥乏味。然而,这本书的叙事方式完全颠覆了我的预期。它的语言风格非常富有感染力,仿佛作者坐在你对面,用最接地气的方式跟你分享他的踩坑经验和独门秘籍。特别是关于多租户应用设计那一章,作者没有止步于简单的隔离模型,而是详细对比了数据库级别的隔离、Schema级别的隔离以及应用层面的逻辑隔离各自的优缺点和适用场景,这种深度的对比分析是其他书籍鲜少提供的。对我来说,最大的价值在于它不仅仅停留在“做什么”,更强调了“如何做决策”。在面对复杂业务需求时,我们常常陷入技术选型的泥潭,这本书提供了一套系统的决策框架,帮助我清晰地权衡性能、成本和维护性。读完后,我感觉我的技术视野被极大地拓宽了,不再局限于单一的技术栈,而是能够从整个平台的角度去审视和设计应用。
我得说,这本书的内容密度极高,需要放慢速度仔细研读,因为它提供的不仅仅是代码片段,更多的是设计思维的转变。作者在介绍API网关和微服务治理时,深入探讨了服务发现、熔断降级、流量整形这些复杂概念背后的数学模型和工程权衡,这让原本抽象的治理策略变得可以被量化和理解。我特别喜欢它对“云成本优化”的探讨,这在很多技术书中往往被忽略。书中详细分析了如何通过合理的资源预留、自动伸缩策略的精细调优,以及利用Serverless的按需计费模型,实现显著的云资源开支削减,这对于任何一个关注项目ROI的团队都是至关重要的信息。读完这本书,我感觉自己从一个单纯的“实现功能”的编码员,蜕变为了一个能够对整个平台架构的效率和经济性负责的系统设计师。它提供的是一套完整的、面向未来的软件交付心法。
要用几个词来概括这本书的特点,我会选择“前瞻性”和“实操性”。作者似乎拥有一种预见未来的能力,书中很多关于函数计算和边缘计算的章节,虽然现在还没有成为绝对主流,但已经为我们描绘了下一个技术浪潮可能带来的编程范式变革。与此同时,它又非常脚踏实地,针对当前企业上云普遍遇到的数据迁移、安全合规等实际问题,给出了非常可操作的解决方案。比如,关于Secrets管理和密钥轮换的最佳实践,作者用清晰的图表展示了不同云厂商提供的服务如何协同工作,确保了敏感信息的生命周期安全。我发现,这本书的内容深度足以让资深架构师受益匪浅,同时,其结构安排又不会让初级工程师望而却步。它成功地搭建了一座连接理论深度和工程实践的桥梁,阅读过程中的满足感是极高的,因为它带来的知识是立竿见影的。
当下创业已经离不开PaaS平台了,所以问题是用哪个平台,怎么用,书里试图给出答案,但可惜这非常难,而且各个平台也在不断变化,终究还是得靠创业者自己的分析和判断。
当PaaS实施手册的快速check list,五星。当PaaS学习手册,一星。
你说技术性嘛,跟你讲了一堆有的没得理论,你说理论嘛,还跟你写几段php代码,教你调用sdk。 完全不明所以,而且为什么一直讲rest。 最后两章稍微有点学习的作用。
比较浅,但是里面对各个laas和paas平台的对比不错,参考书
你说技术性嘛,跟你讲了一堆有的没得理论,你说理论嘛,还跟你写几段php代码,教你调用sdk。 完全不明所以,而且为什么一直讲rest。 最后两章稍微有点学习的作用。