-
内容大纲
用Rust构建快速、稳定、安全的Web服务器!在内存管理与并发机制上独树一帜的Rust语言,凭借其精准把控底层细节的能力,助你打造运行迅捷且零缺陷的应用程序。当你在生产环境中部署Web服务等核心组件时,Rust强大的编译器更能为你筑起防线,规避代价高昂的运行时错误。
《Rust全栈开发》介绍如何使用Rust语言创建现代分布式Web应用程序。你将从基础开始:构建一个简单的HTTP服务器和一个RESTful Web服务。然后,通过添加安全性、数据库交五性和错误处理使它们为生产做好准备。最后,你将处理数字店面服务,创建单页应用程序,并深入研究异步编程。书中的所有示例都有充分的说明,并且包含带有注释的代码,更容易适配你自己的项目。 -
作者介绍
帕布·埃什瓦拉(Prabhu Eshwarla)是一家使用Rust构建Layer1区块链的初创公司的首席技术官。此前,他曾在惠普公司担任工程师及管理人员。 -
目录
第Ⅰ部分 Web服务器及Web服务
第1章 为什么Rust可用于Web应用程序
1.1 现代Web应用程序简介
1.2 为Web应用程序选择Rust
1.2.1 Web应用程序的特点
1.2.2 Rust对Web应用程序的好处
1.2.3 Rust的欠缺之处
1.3 可视化示例应用程序
1.3.1 构建目标
1.3.2 示例应用程序的技术准则
1.4 本章小结
第2章 从头开始编写一个基本的Web服务器
2.1 网络模型
2.2 用Rust编写TCP服务器
2.2.1 设计TCP/IP通信流程
2.2.2 编写TCP服务器和客户端
2.3 用Rust编写HTTP服务器
2.3.1 解析HTTP请求消息
2.3.2 构造HTTP响应消息
2.3.3 编写main()函数和server模块
2.3.4 编写muter和handler模块
2.3.5 测试Web服务器
2.4 本章小结
第3章 构建RESTful Web服务
3.1 Actix入门
3.1.1 编写第一个REST API
3.1.2 了解Actix概念
3.2 使用REST构建Web API
3.2.1 定义项目范围和结构
3.2.2 定义和管理应用程序状态
3.2.3 定义数据模型
3.24 发布课程
3.2.5 获取导师的所有课程
3.2.6 获取单个课程的详细信息
3.3 本章小结
第4章 执行数据库操作
4.1 设置项目结构
4.2 编写与数据库的第一个异步连接(迭代1)
4.2.1 选择数据库和连接库
4.2.2 设置数据库并与异步池连接
4.3 设置Web服务并编写单元测试(迭代2)
4.3.1 设置依赖和路由
4.3.2 设置应用程序状态和数据模型
4.3.3 使用依赖注入设置连接池
4.3.4 编写单元测试
4.4 从数据库创建和查询记录(迭代3)
4.4.1 编写数据库访问函数
4.4.2 编写处理器函数
4.4.3 为数据库支持的Web服务编写main()数
4.5 本章小结
第5章 处理错误
5.1 设置项目结构
5.2 Rust和Actix Web中的基本错误处理
5.3 定义自定义错误处理程序
5.4 检索所有课程的错误处理
5.5 检索课程详情的错误处理
5.6 发布新课程时的错误处理
5.7 本章小结
第6章 增强API无畏重构
6.1 改造项目结构
6.2 强化课程创建和管理的数据模型
6.2.1 更改数据模型
6.2.2 更改课程API
6.3 启用导师注册和管理
6.3.1 导师的数据模型和路由
6.3.2 导师路由的处理器函数
6.3.3 导师路由的数据库访问功能
6.3.4 导师的数据库脚本
6.3.5 运行并测试导师API
6.4 本章小结
第Ⅱ部分 服务器端Web应用程序
第7章 介绍Rust中的服务器端Web应用程序
7.1 介绍服务器端渲染
7.2 使用Actix提供静态网页
7.3 使用Actix和Tera渲染动态网页
7.4 使用表单添加用户输入
7.5 显示带有模板的列表
7.6 编写和运行客户端测试
7.7 连接到后端Web服务
7.8 本章小结
第8章 使用导师注册模板
8.1 编写初始Web应用程序
8.2 显示注册表单
8.3 注册提交处理
8.4 本章小结
第9章 使用表单进行课程维护
9.1 设计用户验证
9.2 设置项目结构
9.3 实现用户验证
9.4 路由哪请求
9.5 使用HTTP POST方法创建资源
9.6 使用HTTP PUT方法更新资源
9.7 使用HTTP DELETE方法删除资源
9.8 本章小结
第Ⅲ部分 高级主题:异步Rust
第10章 了解异步Rust
10.1 异步编程概念
10.2 编写并发程序
10.3 深入研究异步Rust
10.4 了解future
10.5 实现自定义future
10.6 本章小结
第11章 使用异步Rust构建P2P节点
11.1 介绍点对点网络
11.1.1 传输
11.1.2 对等身份
11.1.3 安全性
11.1.4 对等路由
11.1.5 消息传递
11.1.6 流复用
11.2 了解libp2p网络的核心架构
11.2.1 对等ID和密钥对
11.2.2 多地址
11.2.3 Swarm和网络行为
11.3 在对等节点之间交换ping命令
11.4 发现对等节点
11.5 本章小结
第12章 使用Docker部署Web服务
12.1 介绍服务器和应用程序的生产部署
12.1.1 软件部署周期
12.1.2 Docker容器的基础知识
12.2 编写Docker容器
12.2.1 检查Docker安装情况
12.2.2 编写一个简单的Docker容器
12.2.3 多阶段Docker构建
12.3 构建数据库容器
12.3.1 打包Postgres数据库
12.3.2 创建数据库表
12.4 使用Docker打包Web服务
12.5 使用DockerCompose编排Docker容器
12.6 本章小结
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-
孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-
时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-
本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...