电子书 编程

异步Rust编程:释放无畏并发的力量(英文版电子书)

¥1.00 已售 0
✓ 自动发货 ✓ 永久有效 ✓ 售后保障

资源介绍

1. 异步编程基础(第 1-2 章) 异步编程概念:解释异步编程与同步编程的区别,通过 HTTP 请求示例展示异步如何提升性能(如并发处理多个请求时耗时显著减少)。 进程与线程:介绍进程(独立内存空间)和线程(进程内共享内存)的概念,说明异步编程在单线程内实现多任务并发的优势。 Futures 与任务:Futures 是异步操作的占位符,通过poll方法判断状态(Pending或Ready);任务是由执行器管理的异步计算单元,可由多个 Futures 组合而成。 关键概念:包括 Pinning(固定内存地址防止移动)、Context(提供 Waker 用于唤醒任务)、数据共享(通过Arc、Mutex等实现)。 2. 异步运行时与队列(第 3-4 章) 自定义异步队列:构建包含多个队列和工作线程的异步运行时,支持任务优先级、任务窃取(空闲线程从其他队列获取任务)。 网络集成:使用hyper库实现 HTTP 请求集成到自定义运行时,通过mio库直接操作套接字,实现低级别网络通信。 3. 协程与响应式编程(第 5-6 章) 协程(Coroutines):可暂停和恢复的程序单元,与异步任务类似但无需多线程,通过实现Coroutine trait 实现生成器功能,模拟异步行为。 响应式编程:基于观察者模式构建反应式系统(如加热器温度控制系统),通过事件总线实现事件广播,支持多订阅者异步处理事件。 4. Tokio 库与高级模式(第 7-9 章) 自定义 Tokio:配置 Tokio 运行时(如工作线程数、线程池),实现本地任务池、优雅关闭(处理 Ctrl-C 或 SIGHUP 信号)。 Actor 模型:Actor 通过消息传递通信,实现隔离性和并发处理,示例包括键值存储、状态恢复和监督机制(监控 Actor 状态并重启故障 Actor)。 设计模式:介绍异步环境中的常用模式,如隔离模块(为同步代码提供异步接口)、瀑布模式(链式异步任务)、装饰器模式(添加日志等功能)、状态机模式(管理状态转换)、重试与熔断模式(处理错误)。 5. 实战与测试(第 10-11 章) 无依赖异步服务器:仅使用标准库构建异步 TCP 服务器,包括执行器、Waker、发送器 / 接收器等组件。 测试策略:包括单元测试(模拟接口)、死锁检测、竞争条件测试、网络交互模拟,以及细粒度 Future 测试(控制任务 polling 顺序)。 作者背景 Maxwell Flitton:《Rust Web Programming》作者,专注于医疗和金融领域的 Rust 实时系统开发。 Caroline Morton:医生转型软件工程师,开发医疗模拟软件,研究基于 Rust 的合成健康数据生成。 适用人群 适合中级 Rust 开发者,帮助他们利用异步功能改进应用。对于 Rust 新手,建议先学习《The Rust Programming Language》等基础资源。