您将学到什么
Java 开发人员的 Redis 教您如何使用 Jedis 客户端库在 Java 中构建健壮的 Redis 客户端应用程序。本课程侧重于使用 Jedis API 编写惯用的 Java 应用程序,描述用于管理 Redis 数据库连接、处理错误和使用 JDK 中标准类的语言特定模式。课程资料直接使用 Jedis API,不使用任何其他框架。因此,本课程适合所有 Java 开发人员,它清楚地说明了使用 Redis 编写应用程序所涉及的原理。
您将构建什么
为了获得 Java 和 Redis 的实践经验,并使内容更具相关性和趣味性,您将帮助构建一个太阳能监控和摄取应用程序。该项目包含三个组件
- 一个命令行数据加载应用程序
- 使用 Dropwizard 构建的 REST API 后端
- 一个 Vue.js 前端
API 将使用我们将在课程中开发的数据模型从 Redis 加载和查询数据。该项目将涉及使用几个 Redis 数据结构,包括
- 散列
- 集合
- 地理空间索引
- 流
- 服务器还将使用 Redis 在 API 调用上实现速率限制系统。
在整个课程中,您将有机会通过一系列编程挑战来尝试所学内容。
课程大纲
第 1 周
- 概述和介绍
- 你好,Redis
- Redis 客户端和 Jedis 接口
- 编码挑战简介
第 2 周
- 在 Redis 中建模域问题
- 存储太阳能站点指标
- 站点能源状态的排序集合
- 构建排行榜和 Top-N/Bottom-N 查询
第 3 周
- 太阳能站点的地理索引
- 使用地理位置进行标准搜索
- Redis 流用于数据摄取
- 流水线
- 速率限制
第 4 周
- 错误处理
- 了解连接池、多线程和并发
- 连接到分区部署
- 调试 Jedis 程序
- 了解客户端内部结构:协议、二进制数据和编码
第 5 周
- 期末考试
- 课程编号
- RU102J
- 开始
- 2024 年 2 月 20 日
- 预计工作量
- ~ 每周 2 小时
先决条件
RU102J 没有课程先决条件,但课程假设学生已经了解
- Java 和 Maven
- Redis 和 Redis 数据结构,至少在基础层面上
软件需求
- Web 浏览器:Firefox 39.0+ 或 Chrome 43+
- 操作系统:Mac OS X 10.7+ 64 位、Ubuntu 14.04+ 64 位或 Windows 10
- 软件:Java 8 SDK 或更高版本,以及 Docker,或者本地安装 Redis Stack。Redis Insight 建议使用,但不是必需的。
- 访问 youtube.com、university.redis.com 和 github.com

Kyle Banker 是 Redis 的高级现场工程总监。他曾在数据工程领域工作多年,热衷于数据存储和分布式系统,并热衷于尽可能清晰地解释技术。