登入帳戶  | 訂單查詢  | 購物車/收銀台( 0 ) | 在線留言板  | 付款方式  | 運費計算  | 聯絡我們  | 幫助中心 |  加入書簽
會員登入 新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類瀏覽雜誌 臺灣用戶
品種:超過100萬種各類書籍/音像和精品,正品正價,放心網購,悭钱省心 服務:香港台灣澳門海外 送貨:速遞郵局服務站

新書上架簡體書 繁體書
暢銷書架簡體書 繁體書
好書推介簡體書 繁體書

四月出版:大陸書 台灣書
三月出版:大陸書 台灣書
二月出版:大陸書 台灣書
一月出版:大陸書 台灣書
12月出版:大陸書 台灣書
11月出版:大陸書 台灣書
十月出版:大陸書 台灣書
九月出版:大陸書 台灣書
八月出版:大陸書 台灣書
七月出版:大陸書 台灣書
六月出版:大陸書 台灣書
五月出版:大陸書 台灣書
四月出版:大陸書 台灣書
三月出版:大陸書 台灣書
二月出版:大陸書 台灣書

『簡體書』Node.js实战:分布式系统中的后端服务开发

書城自編碼: 3698497
分類:簡體書→大陸圖書→計算機/網絡程序設計
作者: [美]托马斯·亨特二世[Thomas Hunter II]
國際書號(ISBN): 9787111694496
出版社: 机械工业出版社
出版日期: 2021-11-01

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

售價:HK$ 181.8

我要買

 

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


新書推薦:
政和元年:宋辽金夏的国运博弈与谍战风云
《 政和元年:宋辽金夏的国运博弈与谍战风云 》

售價:HK$ 81.6
黄金圈法则
《 黄金圈法则 》

售價:HK$ 93.6
全球治理理论:权威、合法性与论争
《 全球治理理论:权威、合法性与论争 》

售價:HK$ 117.6
华尔街幽灵:一位股票投资大师的告白
《 华尔街幽灵:一位股票投资大师的告白 》

售價:HK$ 95.8
人生幸好有快乐(一代大师梁实秋至诚分享八十余年的快乐哲学!)
《 人生幸好有快乐(一代大师梁实秋至诚分享八十余年的快乐哲学!) 》

售價:HK$ 64.8
中世纪文明(400-1500年)(格致人文)
《 中世纪文明(400-1500年)(格致人文) 》

售價:HK$ 141.6
女子运动术(维持肌肉是更高级的抗衰!变瘦的同时有效增肌,成为更好的自己!)
《 女子运动术(维持肌肉是更高级的抗衰!变瘦的同时有效增肌,成为更好的自己!) 》

售價:HK$ 69.6
你有多敏感,就有多珍贵
《 你有多敏感,就有多珍贵 》

售價:HK$ 70.8

 

建議一齊購買:

+

HK$ 145.2
《 解决方案架构师修炼之道 》
+

HK$ 133.0
《 RocketMQ技术内幕:RocketMQ架构设计与实现原理(第2版) 》
+

HK$ 145.2
《 深入理解分布式事务:原理与实战 》
+

HK$ 174.2
《 深入理解Java虚拟机:JVM高级特性与最佳实践(第3版) 》
+

HK$ 133.7
《 TypeScript图形渲染实战:2D架构设计与实现 》
+

HK$ 98.8
《 Go 语言从基础到中台微服务实战开发 》
編輯推薦:
从初创公司到世界500强,大多数公司都喜欢使用Node.js来构建高性能的后端服务。工程师对Node.js有很高的评价,因为它有容易理解的API和大家熟悉的语法。在全球大的包存储库的强力支持下,Node.js的生态必将更加繁荣。
在本书中,作者证明了Node.js在构建可观察、可扩展且有弹性的服务方面与传统的企业平台一样适用。中高级Node.js开发人员会发现,他们可以将应用程序代码和现代服务的各个层面结合起来。

【通过学习本书,你可以:】
了解为什么要运行多个相同的Node.js服务副本。
根据业务场景选择恰当的协议。
调整应用程序容器以便在生产环境中运行。
跟踪分布式系统中的错误,以确定哪个服务出错。
通过将工作转移给反向代理来简化应用程序代码并提高性能。
构建数据面板来监视服务运行状况和数据吞吐量。
了解在企业环境中操作时需要使用多种工具的原因。
內容簡介:
Node.js是一个基于Chrome V8引擎的JavaScript运行时环境,使用了高效、轻量级的事件驱动、非阻塞 I/O 模型,让JavaScript 运行在服务端的开发平台。本书主要介绍基于Node.js构建企业级后端服务,内容涉及Node.js和JavaScript的特性介绍、通信协议、扩展、可观测性、Docker容器、部署、容器编排、应用程序容错、分布式单元、应用程序安全性等内容。本书不是面向 Node.js新手的,适用于拥有Node.js 实战经验且熟练掌握JavaScript的开发人员。读完本书,你会了解在生产环境中运行 Node.js 服务所需的许多技术。
目錄
第1章 为什么要用分布式9
1.1 JavaScript的单线程特性9
1.2 Node.js 速览13
1.3 Node.js的事件循环16
1.4 示例应用程序21
第2章 协议26
2.1 使用HTTP请求和响应27
2.2 使用GraphQL构建API外观39
2.3 使用gRPC进行RPC通信46
第3章 扩展54
3.1 集群模块54
3.2 使用HAProxy实现反向代理61
3.3 SLA和负载测试72
第4章 可观测性85
4.1 运行环境85
4.2 ELK与日志87
4.3 Graphite、StatsD和Grafana度量指标94
4.4 使用Zipkin进行分布式请求跟踪102
4.5 运行状况检查110
4.6 使用 Cabot 进行报警113
第5章 容器119
5.1 Docker简介121
5.2 容器化Node.js服务127
5.3 使用 Docker Compose进行基本编排135
5.4 内部Docker 注册表140
第6章 部署145
6.1 使用 Travis CI 构建流水线146
6.2 自动化测试151
6.3 部署Heroku162
6.4 模块、包和SemVer168
6.5 内部npm注册表179
第7章 容器编排184
7.1 Kubernetes 简介185
7.2 启动188
7.3 部署应用程序192
7.4 服务发现199
7.5 修改部署204
第8章 弹性210
8.1 Node.js 进程的终止210
8.2 构建无状态服务218
8.3 使用Memcached构建外部缓存224
8.4 数据库连接的弹性229
8.5 使用Knex进行Schema 迁移238
8.6 幂等性和消息传递弹性248
8.7 弹性测试255
第9章 分布式基元259
9.1 ID 生成问题259
9.2 Redis 简介262
9.3 Redis 操作263
9.4 寻求原子性272
9.5 事务274
9.6 Lua脚本276
第10章 安全性281
10.1 繁杂的代码库281
10.2 认识攻击面283
10.3 应用程序配置287
10.4 升级依赖项292
10.5 升级Node.js298
附录A 安装HAProxy303
附录B 安装Docker305
附录 C 安装Minikube和Kubectl307
內容試閱
在旧金山的 NodeSchool 和 Ann Arbor 的 PHP MySQL 工作组工作的这几年间,我一直致力于教授别人编程。到目前为止,我已经教授过数百名学生。教学通常都是从安装和配置所需的软件开始。接下来,我会用一小段代码和大段的语言向学生们解释程序的运行原理,学生们只需“点击”即可。当代码运行起来时,学生们总是特别开心,就像在游戏里习得了新技能一样。
我的目标就是让读者通过本书重现那种激动人心的感觉。在本书中,你将发现许多实际操作的示例,在这些示例中,你可以在开发机上运行各种备份服务,然后使用示例Node.js应用程序代码与它们交互。书中同时伴随着大量的原理解释和小问题,足以充分满足你的好奇心。
在阅读本书的过程中,你将安装并运行许多不同的服务,并且对于每一个服务,你都将编写与它们交互的Node.js应用程序代码。本书着重强调了这些交互,并没有把重心放在分析代码上。
JavaScript 是一种很强大的语言,它能够同时开发前端和后端应用。这便于我们避开外围技术,把全部精力都投入语言学习中。许多人认为只有使用Java或.NET等传统企业平台的工程师才会熟悉这些技术,但其实JavaScript工程师也能够受益于拥有手的技术经验。

【读者对象】
本书不会教你如何使用 Node.js。你应该已经拥有了 Node.js 的实战经验且能熟练使用JavaScript。也就是说,本书确实涵盖了一些与 Node.js 和 JavaScript 相关的鲜为人知的高级概念,如“JavaScript的单线程特性”和“Node.js事件循环”。你还应该熟悉HTTP的基础知识,至少使用过一个数据库来持久化状态,并知道在运行的Node.js进程中维护状态是多么容易但又多么危险。
也许你已经在一家拥有运行后端服务的基础设施的公司工作,并且渴望了解它是如何工作的以及你的Node.js应用程序如何从中受益。或者,你有一个作为副业项目运行的 Node.js
应用程序,并且已经厌倦了它的崩溃情况。你甚至可能是一家初创公司的CTO,并决心满足不断增长的用户群的需求。如果这些情况听起来很熟悉,那么本书很适合你。

【目标】
Node.js通常用于构建前端Web应用程序。本书不涉及任何与前端开发或浏览器相关的主题。本书的目标是让你将后端Node.js服务与各种支持现代分布式系统的服务集成在一起。
当你读完本书的时候,你就会了解在生产环境中运行 Node.js 服务所需的许多技术。例如,部署和扩展应用程序需要什么,如何使服务有冗余性和故障弹性,如何与其他分布式进程进行可靠的通信以及如何观察应用程序的运行状况。

当然,仅仅通过阅读本书就想成为专家不太现实。本书并未涉及调优、分片和将可扩展的 ELK 服务部署到生产环境中所需的操作。不过,你将了解如何运行本地的 ELK 实例,如何从 Node.js 服务向它发送日志,以及如何创建一个可视化数据面板来查看服务的运行状况(参见4.2节)。

本书也许并未涵盖你公司使用的所有技术。虽然第7章讨论了 Kubernetes(一种编排应用程序代码部署的技术),但你的公司可能使用不同的解决方案,比如Apache Mesos。还有一种情况是你所用的是云环境中的Kubernetes版本,其底层实现对你来说是黑箱。无论如何,通过学习分布式后端服务栈不同层级的工具,你将更容易理解可能遇到的其他技术栈。


【示例代码】
可以从https://github.com/tlhunter/distributed-node下载补充材料(示例代码、练习、勘误等)。
这里的代码是为了帮助你更好地理解本书的内容。通常,可以在程序或文档中使用本书中的代码,而不需要联系O’Reilly获得许可,除非需要大段地复制代码。例如,使用本书中所提供的几个代码片段来编写一个程序不需要得到我们的许可,但销售或发布O’Reilly的示例代码则需要获得许可。引用本书的示例代码来回答问题也不需要许可,将本书中的很大一部分示例代码放到自己的产品文档中则需要获得许可。

 

 

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