登入帳戶  | 訂單查詢  | 購物車/收銀台(0) | 在線留言板  | 付款方式  | 聯絡我們  | 運費計算  | 幫助中心 |  加入書簽
會員登入   新用戶註冊
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2024年度TOP分類閱讀雜誌 香港/國際用戶
最新/最熱/最齊全的簡體書網 品種:超過100萬種書,正品正价,放心網購,悭钱省心 送貨:速遞 / 物流,時效:出貨後2-4日

2025年04月出版新書

2025年03月出版新書

2025年02月出版新書

2025年01月出版新書

2024年12月出版新書

2024年11月出版新書

2024年10月出版新書

2024年09月出版新書

2024年08月出版新書

2024年07月出版新書

2024年06月出版新書

2024年05月出版新書

2024年04月出版新書

2024年03月出版新書

『簡體書』Kubernetes设计模式(第二版)

書城自編碼: 4096874
分類: 簡體書→大陸圖書→計算機/網絡數據庫
作者: [英]比尔金 伊卜亚姆[Bilgin Ibryam][德]罗
國際書號(ISBN): 9787519897383
出版社: 中国电力出版社
出版日期: 2025-03-01

頁數/字數: /
書度/開本: 16开 釘裝: 平装

售價:NT$ 653

我要買

share:

** 我創建的書架 **
未登入.



新書推薦:
明代粮长制度(增订本)精--梁方仲著作集
《 明代粮长制度(增订本)精--梁方仲著作集 》

售價:NT$ 316.0
机械复制时代的艺术作品:本雅明精选集
《 机械复制时代的艺术作品:本雅明精选集 》

售價:NT$ 398.0
爱因斯坦学习法
《 爱因斯坦学习法 》

售價:NT$ 281.0
印度古因明研究
《 印度古因明研究 》

售價:NT$ 602.0
帝国痼疾:殖民主义、奴隶制和战争如何改变医学
《 帝国痼疾:殖民主义、奴隶制和战争如何改变医学 》

售價:NT$ 367.0
理智与疯狂
《 理智与疯狂 》

售價:NT$ 347.0
数字文化:公共空间、平台与算法
《 数字文化:公共空间、平台与算法 》

售價:NT$ 505.0
明代一条鞭法(精)--梁方仲著作集
《 明代一条鞭法(精)--梁方仲著作集 》

售價:NT$ 398.0

編輯推薦:
[英] 比尔金 伊卜亚姆(Bilgin Ibryam) [德] 罗兰·胡贝塔(Roland Hu?)
內容簡介:
本书主要内容包括:基本模式篇介绍构建以及运行基于容器的云原生应用程序的核心原则与实践。行为模式篇介绍各类容器和平台交互的管理。结构化模式篇介绍通过组织容器解决特定的用例。配置模式篇介绍如何处理Kubernetes中应用程序的配置。安全模式篇介绍如何提高运行在Kubernetes之上的应用程序的安全性。高级模式篇涵盖更复杂的主题,例如操作器、自动伸缩以及集群内镜像构建等。
關於作者:
Bilgin Ibryam是Diagrid的产品经理,负责公司的产品战略。Roland Hu?博士是红帽的高级首席软件工程师,OpenShift无服务器的架构师。
目錄
目录
序 1
前言 3
第1 章 概述 15
1.1 云原生之路 15
1.2 分布式原语 17
1.2.1 容器 19
1.2.2 Pod .20
1.2.3 服务 21
1.2.4 标签 22
1.2.5 命名空间 .24
1.3 讨论 .26
1.4 参考资料27
第一篇 基础模式
第2 章 可预测的需求 31
2.1 问题 .31
2.2 解决方案31
2.2.1 运行时依赖 32
2.2.2 资源配置文件 34
2.2.3 Pod 优先级 .37
2.2.4 项目资源 .40
2.2.5 容量规划 .42
2.3 讨论 .43
2.4 参考资料44
第3 章 声明式部署 45
3.1 问题 .45
3.2 解决方案45
3.2.1 滚动部署 .47
3.2.2 固定部署 .50
3.2.3 蓝绿发布 .51
3.2.4 金丝雀发布 52
3.3 讨论 .52
3.4 参考资料55
第4 章 健康检测 57
4.1 问题 .57
4.2 解决方案57
4.2.1 进程健康检查 58
4.2.2 存活探针 .58
4.2.3 就绪探针 .60
4.2.4 启动探针 .62
4.3 讨论 .64
4.4 参考资料65
第5 章 生命周期管理 67
5.1 问题 .67
5.2 解决方案67
5.2.1 SIGTERM 信号 68
5.2.2 SIGKILL 信号 68
5.2.3 Poststart 钩子 69
5.2.4 Prestop 钩子 70
5.2.5 其他生命周期控制 .71
5.3 讨论 .75
5.4 参考资料75
第6 章 自动放置 77
6.1 问题 .77
6.2 解决方案77
6.2.1 可利用的节点资源 .78
6.2.2 容器资源需求 79
6.2.3 调度器配置 79
6.2.4 调度的过程 80
6.2.5 节点亲和性 82
6.2.6 Pod 亲和性和反亲和性 83
6.2.7 拓扑分布约束 85
6.2.8 污点和容忍 86
6.3 讨论 .90
6.4 参考资料93
第二篇 行为模式
第7 章 批处理作业 97
7.1 问题 .97
7.2 解决方案98
7.3 讨论 104
7.4 参考资料.104
第8 章 定期作业 . 107
8.1 问题 107
8.2 解决方案.108
8.3 讨论 110
8.4 参考资料. 110
第9 章 守护进程服务 .111
9.1 问题 111
9.2 解决方案. 112
9.3 讨论 115
9.4 参考资料. 116
第10 章 单例服务 117
10.1 问题 117
10.2 解决方案 118
10.2.1 应用程序外锁定 . 118
10.2.2 应用程序内锁定 .120
10.2.3 Pod 中断预算 123
10.3 讨论 124
10.4 参考资料 125
第11 章 无状态服务 127
11.1 问题 127
11.2 解决方案 128
11.2.1 实例 128
11.2.2 网络 130
11.2.3 存储 131
11.3 讨论 133
11.4 参考资料 135
第12 章 有状态服务 . 137
12.1 问题 137
12.1.1 存储 138
12.1.2 网络 139
12.1.3 标识 139
12.1.4 序数 139
12.1.5 其他需求 140
12.2 解决方案 140
12.2.1 存储 142
12.2.2 网络 142
12.2.3 标识 145
12.2.4 序数 145
12.2.5 其他特性 145
12.3 讨论 147
12.4 参考资料 148
第13 章 服务发现 149
13.1 问题 149
13.2 解决方案 150
13.2.1 内部服务发现 151
13.2.2 手动发现服务 155
13.2.3 集群外部的服务发现 157
13.2.4 应用层服务发现 161
13.3 讨论 164
13.4 参考资料 165
第14 章 自我认知 167
14.1 问题 167
14.2 解决方案 168
14.3 讨论 171
14.4 参考资料 172
第三篇 结构化模式
第15 章 初始化容器 . 175
15.1 问题 175
15.2 解决方案 176
15.3 讨论 181
15.4 参考资料 181
第16 章 边车 183
16.1 问题 183
16.2 解决方案 184
16.3 讨论 186
16.4 参考资料 187
第17 章 适配器 189
17.1 问题 189
17.2 解决方案 189
17.3 讨论 192
17.4 参考资料 192
第18 章 外交官 193
18.1 问题 193
18.2 解决方案 193
18.3 讨论 195
18.4 参考资料 196
第四篇 配置模式
第19 章 环境变量配置 . 199
19.1 问题 199
19.2 解决方案 199
19.3 讨论 204
19.4 参考资料 205
第20 章 配置资源 207
20.1 问题 207
20.2 解决方案 207
20.3 讨论 214
20.4 参考资料 214
第21 章 不可变配置 . 215
21.1 问题 215
21.2 解决方案 216
21.2.1 Docker 卷 216
21.2.2 Kubernetes 初始化容器 218
21.2.3 OpenShift 模板 221
21.3 讨论 222
21.4 参考资料 223
第22 章 配置模板 225
22.1 问题 225
22.2 解决方案 225
22.3 讨论 231
22.4 参考资料 231
第五篇 安全模式
第23 章 进程约束 235
23.1 问题 235
23.2 解决方案 236
23.2.1 通过非root 用户运行容器 .236
23.2.2 限制容器能力 238
23.2.3 避免可变的容器文件系统 .239
23.2.4 强制执行的安全策略 240
23.3 讨论 242
23.4 参考资料 243
第24 章 网络分段 245
24.1 问题 245
24.2 解决方案 246
24.2.1 网络策略 247
24.2.2 身份验证策略 256
24.3 讨论 260
24.4 参考资料 260
第25 章 安全配置 263
25.1 问题 263
25.2 解决方案 264
25.2.1 集群外加密265
25.2.2 集中式机密管理 .274
25.3 讨论 279
25.4 参考资料 280
第26 章 访问控制 281
26.1 问题 281
26.2 解决方案 282
26.2.1 认证 283
26.2.2 授权 284
26.2.3 准入控制器285
26.2.4 主体 285
26.2.5 基于角色的访问控制 293
26.3 讨论 305
26.4 参考资料 307
第六篇 高级模式
第27 章 控制器 311
27.1 问题 311
27.2 解决方案 312
27.3 讨论 324
27.4 参考资料 325
第28 章 操作器 327
28.1 问题 327
28.2 解决方案 328
28.2.1 自定义资源定义 .328
28.2.2 控制器和操作器的分类 331
28.2.3 操作器的开发与部署 334
28.2.4 示例 338
28.3 讨论 342
28.4 参考资料 343
第29 章 弹性伸缩 . 345
29.1 问题 345
29.2 解决方案 346
29.2.1 手动水平伸缩 346
29.2.2 Pod 水平自动伸缩 .347
29.2.3 Pod 垂直自动伸缩 .362
29.2.4 集群自动伸缩 366
29.2.5 伸缩级别 369
29.3 讨论 371
29.4 参考资料 372
第30 章 镜像构建 375
30.1 问题 375
30.2 解决方案 376
30.2.1 容器镜像构建器 .377
30.2.2 构建编排器382
30.2.3 构建Pod .383
30.2.4 OpenShift 构建 388
30.3 讨论 396
30.4 参考资料 396
后记 . 399
內容試閱
前言近年来随着微服务和容器的采用,我们设计、开发和运行软件的方式发生了重大变化。如今的应用程序在可用性、可扩展性以及上市的速度等方面都得到了优化。在这些需求的驱动下,现代架构需要不同的模式和实践。本书旨在帮助开发人员发现和学习使用Kubernetes 创建云原生应用程序时最Z常用的模式。首先,让我们简要介绍一下本书的两个主要成分:Kubernetes 和设计模式。KubernetesKubernetes 是一个容器编排平台。Kubernetes 起源于谷歌的数据中心,谷歌的内部容器编排平台Borg(参考链接:https://oreil.ly/x12HH)也诞生于此。多年来,谷歌一直通过Borg 来运行应用程序。2014 年,谷歌决定利用Borg 的经验建立一个名为“Kubernetes”(希腊语为“舵手”或“飞行员”)的新开源项目。2015 年,该项目成为首个捐赠给新成立的云原生计算基金会(Cloud Native Computing Foundation,简称CNCF)的项目。Kubernetes 自创建之初就赢得了一个完整的用户社区,而且贡献者的数量以惊人的速度增长。如今,Kubernetes 成为GitHub 上最Z流行的项目之一。公平地说,Kubernetes 是最Z常用且功能最Z丰富的容器编排平台。此外,Kubernetes 还成为构建于其上的其他平台的基础。在这些平台即服务的系统中,最Z为突出的是红帽的OpenShift,它为Kubernetes 提供了各种附加功能。这些只是我们选择Kubernetes 作为本书云原生模式参考平台的部分原因。本书假定你具备一定的Kubernetes 基本知识。第d1 章概括了Kubernetes 的核心概念,并为后续各个模式奠定了基础。设计模式设计模式的概念可以追溯到20 世纪70 年代的建筑领域。建筑师及系统理论家Christopher Alexander 与其团队于1977 年发表了开创性的《建筑模式语言》(参考链接:https://oreil.ly/TKzwz)(牛津大学出版),其中描述了建立城镇、大楼和其他建筑项目的建筑模式。后来,这个想法被新兴的软件业采用。该领域最Z著名的书籍《设计模式:可复用面向对象软件的基础》(参考链接:https://oreil.ly/k5toF)由Erich Gamma、Richard Helm、Ralph Johnson 与John Vlissides 四人合著,后以“四人组”著称。我们谈论的单例模式、工厂方法或委托模式正是来自于这本书。从那以后,许多优秀的模式书籍纷纷问世,针对各个领域从不同程度上进行了讲解,比如Gregor Hohpe 和Bobby Woolf 的《企业集成模式》(参考链接:https://oreil.ly/5aRjR),以及Martin Fowler 的《企业应用架构模式》(参考链接:https://oreil.ly/yOdWA)(Addison-Wesley 出版)。简而言之,模式描述了问题的可复用解决方案注1。这个定义同样适用于本书描述的模式,只不过我们的解决方案中没有那么多变数。模式不同于配方,因为模式不会提供解决问题的步骤说明,只提供了解决某一类问题的大概思路。例如,Alexander 的模式“啤酒馆”描述了如何建造公共的饮酒场所,“陌生人和朋友都可以在这种地方结伴饮酒”,不再做一只“孤独的锚”。所有依据这种模式建造的场所都会有所不同,但它们也有共同之处,例如可容纳4 ~ 8 人的隔间,以及可供百人饮酒、听音乐以及其他活动的场所。然而,模式不仅限于提供解决方案,它还关系到一种语言的形成。本书中的模式形成了一种紧凑、以名词为中心的语言,其中每个模式都带有唯W一的名称。在这种语言建立后,当人们谈论这些模式时,这些名称会自动让人们联想到类似的表征。举个例子,当我们谈论一张桌子时,我们会假设我们谈论的是有四条腿的一块木头,而且可以在上面放东西。软件工程也一样,例如当我们谈论“工厂”时,在面向对象的编程语言上下文中,我们会立即将“工厂”与生成其他对象的对象相关联。由于我们会立刻想起模式背后的解决方案,因此就可以节约时间来处理尚未解决的问题。模式语言还有其他特征。各个模式之间相互关联且可以重叠,因此很多模式加在一起就可以解决大部分问题。此外,正如《建筑模式语言》中描述的那样,模式没有统一的详细程度和范围。宽泛的模式可以涵盖更广泛的问题,并为如何解决问题提供粗略的指导。详细的模式有非常具体的解决方案,但无法广泛适用。本书包含所有类型的模式,其中许多模式都引用了其他模式,甚至可能将其他模式作为解决方案的一部分。模式的另一个特征是它们都遵循严格的格式。然而,每个作者都定义了不同的格式,遗憾的是,我们没有统一的标准规定模式。Martin Fowler 在《Writing Software Patterns》(参考链接:https://oreil.ly/6IA6k)中概述了模式语言的格式。本书的结构我们为本书选择了一种简单的模式格式。我们不遵循任何特定的模式描述语言。针对每个模式,我们使用以下结构:名称每个模式都带有一个名称,这也是各章的标题。名称是模式语言的中心。问题本节给出了宽泛的上下文,并详细描述了模式的空间。解决方案本节介绍了模式以Kubernetes 特有的方式解决问题的方法。当其他模式与当前模式相关,或是当前模式的一部分时,本节还会包含交叉引用。讨论本节讨论了在特定上下文中解决方案的优缺点。参考资料最Z后一节包含了与模式相关的其他信息来源。我们按照如下结构组织了本书中的模式:? 第d一篇,基础模式,涵盖了Kubernetes 的核心概念。这些章节介绍了构建基于容器的云原生应用程序的基本原则和实践。? 第二篇,行为模式,描述了基本模式之上的模式,并详细介绍了管理各种类型的容器和平台交互的概念。? 第三篇,结构化模式,涵盖了与在Pod 内组织容器相关的模式——Pod 是Kubernetes 平台的原子。? 第四篇,配置模式,深入讲解在Kubernete 中处理应用程序配置的各种方法。这些章节的模式涉及很多细节,包括将应用程序连接到配置的具体方案。? 第五篇,安全模式,介绍了应用程序容器化并部署到Kubernetes 时出现的各种安全问题。? 第六篇,高级模式,容纳了很多高级概念,例如扩展平台本身的方式,以及在集群内直接构建容器镜像的方式。根据上下文不同,同一个模式可能也可以适用于多个类别。每章的模式都是独立的,你可以按照任意顺序单独阅读各个章节。本书的读者对象本书面向希望将Kubernetes 作为平台,设计和开发云原生应用程序的开发人员。如果你对容器和Kubernetes 的概念有基本的了解,并希望提升自身的水平,那么本书非常适合你。但是,理解本书中的用例和模式无需掌握Kubernetes 的底层细节。架构师、技术顾问和开发人员都可以从本书中描述的可复用模式中受益。本书的内容基于真实项目的用例和经验教训,囊括了我们多年从事该领域总结出来的最Z佳实践和模式。我们希望帮助你理解以Kubernetes 为核心的思维方式,并创建更好的云原生应用程序,而不是重新发明轮子。本书的写作风格非常轻松,各章均可以作为系列论文单独阅读。下面,我们简要地介绍一下本书不包含的内容:? 本书不是Kubernetes 的入门教程,也不是参考手册。我们介绍了大量Kubernetes 的功能,并给出了详细的解释,但我们关注的是这些功能背后的概念。第d1 章简要介绍了Kubernetes 的基础知识。如果你需要有关Kubernetes 使用方面的综合性书籍,那么我们强烈推荐MarkoLuk?a 的著作《Kubernetes in Action》。? 本书不是关于如何设置Kubernetes 集群的指南。每个示例的前提都是你已有启动并运行Kubernetes。你可以通过多种方式尝试这些示例。如果你有兴趣学习如何设置Kubernetes 集群,我们推荐Brendan Burns、Joe Beda、Kelsey Hightower 和Lachlan Evenson 的著作《Kubernetes 即学即用》。? 本书不讨论如何为其他团队操作和管理Kubernetes 集群。我们有意跳过了Kubernetes 的管理和操作相关内容,而是从开发者的角度来看待Kubernetes。本书可以帮助运维团队了解开发人员如何使用Kubernetes,但有关Kubernetes 集群的管理和自动化的讨论并不多。如果你有兴趣学习如何操作Kubernetes 集群,我们推荐Brendan Burns、Eddie Villalba、Dave Strebel 和Lachlan Evenson 的著作《Kubernetes Best Practices》。主要内容本书有很多值得探索的地方。有些模式看起来可能像Kubernetes 手册中的摘录,但仔细观察后,你就会发现这些模式是从概念的角度呈现的,这是其他书籍中从未有过的角度。有些模式则通过不同的方法进行了解释,并针对具体的问题提供了详细的指导,如第四篇中的“配置模式”。有些章节介绍的Kubernetes功能不完全符合模式定义。请不要纠结这究竟是模式还是功能。所有章节都从基本原理出发,考察所涉及的各种因素,重点介绍用例、经验教训和最Z佳实践。这才是有价值的部分。无论模式呈现的细节多少,你都可以通过大量示例针对这些概念的说明,了解Kubernetes 为每种特定模式提供的所有内容。书中所有的示例都经过了测试,你可以通过后续“使用代码示例”小节中介绍的方式获取完整的源代码。第二版的新内容自几年前第d一版发行以来,Kubernetes 生态系统一直在不断发展,出现了许多Kubernetes 的新版本,以及更多使用Kubernetes 的工具和模式已经成为事实上的标准。幸运的是,本书中描述的大多数模式经受住了时间的考验,依然有效。因此,我们更新了这些模式,添加了截止到Kubernetes 1.26 之前的新特性,并删除了过时和弃用的部分。第29 章和第30 章由于领域的新发展而进行了重大修改,除此之外的章节都没有太大的改动。此外,我们还新增了五种模式,并引入了一个新类别,第五篇“安全模式”,以弥补第d一版的不足,并为开发人员提供重要的安全相关模式。我们的GitHub 示例(地址:https://oreil.ly/kXGjC)已更新并进行了扩展。最Z后,本书还增加了50% 的新内容。排版约定本书使用了下述排版约定。斜体(Italic)表示新术语、URL、电子邮件地址、文件名和扩展名。等宽字体(Constant Width)表示程序片段,以及正文中出现的变量、函数名、数据库、数据类型、环境变量、语句和关键字等。如上所述,模式形成了一种简单、彼此关联的语言。为了强调这种模式的关联,每种模式都用斜体字来表示(例如,边车)。当模式根据Kubernetes 的核心概念(如初始化容器或控制器)命名时,我们仅在直接引用模式本身时才使用这种特定的格式。如果有必要,我们还会给出相应的章节。此外,本书还采用下述约定:? 凡是可以在shell 或编辑器中键入的内容都以固定宽度的字体显示。? Kubernetes 资源的名称始终以大写形式呈现(如Pod)。如果资源采用了组合名称(如ConfigMap),我们也会采用这种形式,因为这种形式可以更为清晰地显示“config map”,而且还表明它指代Kubernetes 概念。? 有时,Kubernetes 的资源名称与“服务”或“节点”等常见概念相同。在这些情况下,我们仅在引用资源本身时使用资源名称格式。使用代码示例本书中的每个模式都有完整的可执行示例支持,你可以通过本书的主页找到这些示例(地址:https://k8spatterns.io/)。你还可以在每章末尾“参考资料”一节中找到每个模式示例的链接。“参考资料”小节还包含许多指向与模式相关信息的链接。我们会通过示例代码库更新参考资料的列表。本书通过GitHub 提供了所有示例的源代码(地址:https://oreil.ly/bmj-Y)。本书的代码库和主页还有关于如何在Kubernetes 集群中尝试这些示例的指导和说明。在阅读这些示例时,请查看示例提供的资源文件,其中包含许多有用的注释,有助于进一步理解示例代码。许多示例都采用了一个名为“random-generator”(随机数生成器)的REST服务,调用该服务将返回随机数。该服务是为了很好地配合本书中的示例而专门设计的。你也可以通过GitHub 找到该服务的源代码(地址:https://oreil.ly/WuYSu),而它的容器镜像k8spatterns/random-generator 托管在Docker Hub 上(地址:https://oreil.ly/N36MB)。本书采用了JSON 路径表示法来描述资源字段。例如,.spec.replicas 资源spec 部分的replicas 字段。如果你发现示例代码或文档中存在任何问题,或有任何疑问,请大胆地在GitHub 的问题跟踪器中建票(地址:https://oreil.ly/hCnmn)。我们会持续关注GitHub 上的问题,并愿意解答上面的所有问题。本书所有代码均在Creative Commons Attribution 4.0(CC BY 4.0)许可(参考链接:https://oreil.ly/QuiQc)下分发。这些代码可以免费使用,你也可以自由地分享和修改,并用于商业和非商业项目。但是,如果你复制或分发这些代码,则应保留本书的署名。署名一般包括书名、作者、出版社和国际标准图书编号。例如:“Kubernetes Patterns, 2nd Edition, by Bilgin Ibryam and Roland Hu? (O’Reilly). Copyright 2023 Bilgin Ibryam and Roland Hu?, 978-1-098-13168-5”。另外, 你也可以在本书的主页上添加链接以及版权声明并链接到许可证(地址:https://k8spatterns.io/)。我们欢迎你为本书贡献代码!如果你认为我们的示例有待改进,那么衷心希望能够收到您的来信。你只需在GitHub 上建立问题票,或创建一个拉取请求,就可以与我们取得联系。O’Reilly 在线学习平台(O’Reilly Online Learning)近40 年来,O’Reilly Media 致力于提供技术和商业培训、知识和卓越见解,来帮助众多公司取得成功。公司独有的专家和改革创新者网络通过O’Reilly 书籍、文章以及在线学习平台,分享他们的专业知识和实践经验。O’Reilly 在线学习平台按照您的需要提供实时培训课程、深入学习渠道、交互式编程环境以及来自O’Reilly 和其他200 多家出版商的大量书籍与视频资料。更多信息,请访问网站:https://www.oreilly.com/。联系我们任何有关本书的意见或疑问,请按照以下地址联系出版社。美国:O’Reilly Media, Inc.1005 Gravenstein Highway NorthSebastopol, CA 95472中国:北京市西城区西直门南大街2 号成铭大厦C 座807 室(100035)奥莱利技术咨询(北京)有限公司这本书有专属网页,你可以在那儿找到本书的勘误、示例和其他信息。地址是:https://oreil.ly/kubernetes_patterns-2e。如果你对本书有一些评论或技术上的建议,请发送电子邮件到 errata@oreilly.com.cn。要了解O’Reilly 图书、培训课程、会议和新闻的更多信息,请访问我们的网站,地址是:http://www.oreilly.com。我们的LinkedIn:https://linkedin.com/company/oreilly-media。我们的Twitter:http://twitter.com/oreillymedia。我们的Youtube:http://www.youtube.com/oreillymedia。本书作者的Twitter:https://twitter.com/bibryam,https://twitter.com/ro14nd。本书作者的Mastodon:https://fosstodon.org/@bilgin,https://hachyderm.io/@ro14nd。本书作者的GitHub:https://github.com/bibryam,https://github.com/rhuss。本书作者的博客:https://www.ofbizian.com,https://ro14nd.de。致谢作者Bilgin 非常感激妻子Ayshe。在他撰写本书期间,妻子给予了无尽的支持和耐心。他还想感谢可爱的女儿Selin 和Esin,她们总能让他露出笑容。两个女儿是他的一切。最Z后,Bilgin 还想感谢合著伙伴Roland,感谢他的付出,本书才能顺利完结。作者Roland 向妻子Tanja 表示深深的感谢。感谢妻子在他撰写本书期间给予的支持和宽容,并感谢儿子Jakob 的鼓励。此外,Roland 还特别感谢Bilgin,本书得以付梓,Bilgin 的真知灼见以及出色的写作功不可没。两版书的撰写经历了漫长的岁月,我们要感谢在整个过程中帮助我们始终朝着正确方向前进的评审员们。对于第d一版,特别感谢Paolo Antinori 和Andrea Tarocchi 在创作过程中给予的帮助。感谢Marko Luk?a、Brandon Philips、Michael Hüttermann、Brian Gracely、Andrew Block、Jiri Kremser、Tobias Schneck 和Rick Wagner,他们为我们提供了专业知识和建议。最Z后,还要感谢孜孜不倦的编辑Virginia Wilson、John Devins、Katherine Tozer、Christina Edwards,以及O’Reilly 所有人帮助我们出版本书。第二版的创作绝非易事,我们感谢所有在整个过程中支持我们的人。感谢我们的技术评审员Ali Ok、Dávid ?imansk?、Zbyněk Roubalík、Erkan Yanar、Christoph St?bler、Andrew Block 和Adam Kaplan,以及我们的开发编辑Rita Fernando 在整个过程中给予的耐心和鼓励。非常感谢O’Reilly 生产团队,尤其是Beth Kelly、Kim Sandoval 和Judith McConville,感谢他们在最Z终定稿时对细节的一丝不苟。我们特别感谢Abhishek Koserwal 为第26 章创作付出的不懈努力。他为我们提供了及时的帮助,并推动了本书的出版。

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 台灣用户 | 香港/海外用户
megBook.com.tw
Copyright (C) 2013 - 2025 (香港)大書城有限公司 All Rights Reserved.