GraphQL在Rust上:从零构建现代API
GraphQL在Rust上:从零构建现代API
简介:
本书是您使用GraphQL和Rust语言构建现代API的实用指南。在微服务和高负载系统时代,Rust提供了C++性能与内存安全性的独特结合,而GraphQL则提供了客户端与服务器交互的灵活性和效率。两者结合,构成了构建新一代网络服务的强大技术栈。
本书适合谁?
- 希望掌握GraphQL的Rust开发者;
- 正在寻找REST替代方案的Backend工程师;
- 评估新项目技术栈的CTO和架构师;
- 所有希望了解如何构建类型安全API的人。
您将学到什么:
- GraphQL基础:模式、类型、解析器、变更和订阅;
- 与Actix-web、Axum和Rocket框架的集成;
- 使用流行的crate——async-graphql和Juniper;
- 复杂查询的设计与N+1优化;
- 身份验证、授权和注入防护;
- 解析器测试与集成测试;
- GraphQL服务的部署、监控和日志记录。
本书遵循“由浅入深”的原则。您将从返回“Hello, GraphQL!”的最小服务器开始,到最后构建一个通过WebSocket订阅支持实时功能的完整应用程序。每一章都包含可直接运行的实践示例和典型错误分析。
特别关注安全性:您将了解Rust如何在编译阶段就帮助防止整类漏洞,以及如何在GraphQL中正确验证输入数据。专门有一章讲解基准测试和性能分析——您将学会测量性能并找到瓶颈。
作者——Alexey Zakharov,拥有10年经验的资深后端开发者,其中最近5年专注于Rust和GraphQL。本书语言生动,带有幽默感和真实的生产环境故事。阅读本书后,您将能够自信地在商业项目中设计和维护基于Rust的GraphQL API。
附加材料:示例代码仓库、代码审查清单、async-graphql语法速查表。
如果您想编写在高负载下不崩溃、易于扩展且响应速度令用户满意的API,请拿起这本书。