Skip to content

Latest commit

 

History

History
45 lines (39 loc) · 1.07 KB

README.md

File metadata and controls

45 lines (39 loc) · 1.07 KB

Requirements

Installation

  1. Install Node, Yarn, Redis from links above or via command line
  2. Install Node dependencies
yarn
  1. Set up environment variables
cp .env.example .env

Build and Run

  1. Run Redis server
redis-server
  1. Start Node server
yarn dev
  1. Call APIs via Postman or browser

Test

yarn test

Caching Strategy

  • When there is no cache upon the first API call, all character ids are fetched from the external Marvel API
  • Then they are stored in an object together with a cached date in Redis
{
  "characters": [1, 2, 3],
  "timestamp": "2021-05-16"
}
  • When cache is found upon subsequent API call, all character ids are extracted from Redis, together with the timestamp
  • The timestamp is used to call the external Marvel API by being passed in as modifiedSince to fetch any additional characters that have been added since the cached date