您将学到的知识
在 *RU102PY* 中,您将使用 Python、Redis 和 Flask Web 框架构建一个完整的应用程序。您将学习如何连接到 Redis、建模域、存储和检索数据以及利用常见的 Redis 模式。
您将构建的内容
随着课程的进行,您将编写代码来实现太阳能监控应用程序的功能。这个现实世界的项目包含三个组件
- 命令行数据加载应用程序
- 使用 Flask 的 REST API 后端
- Vue.js 前端(不需要 Vue 经验!)
我们将使用我们在开发过程中创建的数据模型将数据存储在 Redis 中。该项目将利用许多 Redis 数据结构,包括
- 哈希
- 集合
- 排序集
- 地理空间索引
- 流
我们将提供最佳实践示例,例如使用管道、事务和 Lua 脚本。我们还将演示几种常见的 Redis 模式,包括用于 API 调用的速率限制和用于高产太阳能站点的排行榜。
课程大纲
第 1 周
- 概述和介绍
- Redis 简介
- Python Redis 客户端入门
- 编码挑战和测试驱动开发简介
第 2 周
- 在 Redis 中对域问题进行建模
- 存储太阳能站点的指标
- 用于站点能源状态的排序集
- 构建排行榜和 Top-N/Bottom-N 查询
- 管道
- 事务
第 3 周
- 太阳能站点的地理空间索引
- 使用 Geo 进行标准搜索
- 用于数据导入的 Redis 流
第 4 周
- 速率限制
- 错误处理
- 连接管理
- 调试
- 了解客户端内部结构:协议、二进制数据和编码
第 5 周
- 期末考试
- 课程编号
- RU102PY
- 开始时间
- 2024 年 2 月 20 日
- 预计工作量
- ~ 每周 3 小时
先决条件
RU102PY 没有先修课程要求。但是,我们假设学生已经了解
- Python 编程语言
- Redis 和 Redis 数据结构,至少在基本层面上
软件需求
- Web 浏览器: Firefox 39.0+ 或 Chrome 43+
- 操作系统: Mac OS X 10.7+ 64 位,Ubuntu 14.04+ 64 位或 Windows 10
- 软件: Docker 或 Python 3.8、make 和 Redis 5 或 6 的本地安装
- 访问 youtube.com、university.redis.com 和 github.com

Andrew Brookins 曾是 Redis 的开发者倡导者,并且是《Django 数据库性能之庙》的作者。作为一名拥有十年经验的高级开发人员,Andrew 在使用 Python、Ruby、JavaScript/ES6、Objective-C 等技术构建生产软件方面做出了重大贡献。