What you’ll learn
RU102JS provides a deep dive into Redis for Node.js applications. You can expect to learn how to make connections to Redis, store and retrieve data, and leverage essential Redis features such as sorted sets and streams.
What you’ll build
As the course progresses, you’ll write code that implements the features of a solar power monitoring application. This real-world project consists of three components:
- A command-line data loading application
- A REST API backend using Express
- A Vue.js front end (No Vue experience required!)
We’ll store data in Redis using a data model that we’ll develop along the way. The project will leverage a number of Redis data structures, including:
- Sorted sets
- Geospatial indexes
We’ll provide examples of best practices such as the use of pipelining, transactions, and Lua scripting. We’ll also demonstrate several common Redis patterns, including rate-limiting for API calls and leaderboards for top-producing solar sites.
- Overview and Introduction
- Hello Redis
- Getting Started with the Redis Client for Node.js
- Introduction to Coding Challenges and test-driven development
- Modeling a Domain Problem in Redis
- Storing Solar Site Metrics
- Sorted Sets for Site Energy Status
- Building Leaderboards and Top-N/Bottom-N Queries
- Geo-Indexing Solar Sites
- Criteria Searching with Geo
- Redis Streams for Data Ingestion
- Blocking Commands
- Time-Series Data
- Error Handling and Debugging
- Understanding Client Internals: Protocols, Binary Data, and Encoding
- Final Exam
- Course Number
- September 05, 2023
- October 19, 2023
- Estimated Effort
- ~ 3 hours per week
RU102JS has no course prerequisites. However, we assume that students already understand:
- The Node.js programming model
- The basics of the Express web application framework
- Redis and Redis Data Structures (approximately to the level covered in the RU101 course)
- Web Browser: Firefox 39.0+ or Chrome 43+
- Operating System: Mac OS X 10.7+ 64-bit, Ubuntu 14.04+ 64-bit, or Windows 10
- Software: Local installs of Node.js 8.9.3 plus Docker or local install of Redis Stack. RedisInsight recommended but not required.
- Access to youtube.com, university.redis.com and github.com
Simon Prickett is the Principal Developer Advocate at Redis. He began his career writing C++ for Hewlett-Packard Labs, and has subsequently held senior roles with companies ranging from startups to enterprises including Capital One, USA Today, and New Zealand’s Customs Service.
Simon has created software for mobile and embedded devices since the late 1990s, from early browser-based cellphone portals to today’s IoT and cloud architectures. The need for high performance, efficiency, and personalization that makes these systems successful led him to discover Redis.
Away from professional life Simon enjoys traveling, cycling, and building devices with microcontrollers. Simon holds a Computing Science degree from Aston University, located in Birmingham England.