API server and client implementation of an application using MongoDB for document storage and Redis for lookaside caching.
- Implements a simple conjunctive search on MongoDB and Redis.
- Utilizes RedisJSON for document storage and RediSearch for indexing.
- Though not designed to be a benchmarking app, it does keep track of fetch latencies associated with cache hits and misses.
- Docker
- Python
- Clone this repo.
- Go to document-lookaside folder.
cd document-lookaside
- Build and start docker containers
docker compose up
python3 ./tests/test.py
curl http://localhost:8000/cancellations/airports/ATL/2003/6
{"result":216}
curl http://localhost:8000/metrics
{"cache_hits":86,"cache_misses":915,"ave_cache_latency":0.309,"ave_db_latency":0.77}