Show how the redis works with Python, Django.
(See notes: How to run on Google Cloud)
If you don't have redis yet, plug it in (https://spring-gcp.saturnism.me/app-dev/cloud-services/cache/memorystore-redis). After successful deployment, you need to manually enable the vpc connector as shown in the pictures:
- Open link google cloud console.
- Click "Edit and deploy new revision" button.
- Add environment.
- Select vpc-connector and deploy application.
- The AAPL's details - market cap of 2,6 triillions and USA origin - are stored in a hash like below:
HSET "company:AAPL" symbol "AAPL" market_cap "2600000000000" country USA
- The Ranks of AAPL of 2,6 trillions are stored in a ZSET.
ZADD companyLeaderboard 2600000000000 company:AAPL
- Top 10 companies:
ZREVRANGE companyLeaderboard 0 9 WITHSCORES
- All companies:
ZREVRANGE companyLeaderboard 0 -1 WITHSCORES
- Bottom 10 companies:
ZRANGE companyLeaderboard 0 9 WITHSCORES
- Between rank 10 and 15:
ZREVRANGE companyLeaderboard 9 14 WITHSCORES
- Show ranks of AAPL, FB and TSLA:
ZREVRANGE companyLeaderBoard company:AAPL company:FB company:TSLA
- Adding 1 billion to market cap of FB company:
ZINCRBY companyLeaderBoard 1000000000 "company:FB"
- Reducing 1 billion of market cap of FB company:
ZINCRBY companyLeaderBoard -1000000000 "company:FB"
- Companies between 500 billion and 1 trillion:
ZCOUNT companyLeaderBoard 500000000000 1000000000000
- Companies over a Trillion:
ZCOUNT companyLeaderBoard 1000000000000 +inf
git clone
Install docker (on mac: https://docs.docker.com/docker-for-mac/install/)
docker network create global
docker-compose up -d --build
If you install redis manually open configuration folder and copy .env.example
to create .env
. And provide the values for environment variables
- DJANGO_DEBUG: Django debug mode
- DJANGO_ALLOWED_HOSTS: Allowed hosts
- REDIS_URL: Redis server url
- REDIS_HOST: Redis server host
- REDIS_PORT: Redis server port
- REDIS_DB: Redis server db index
- REDIS_PASSWORD: Redis server password
Install python, pip and venv (on mac: https://installpython3.com/mac/)
Use python version: 3.9.1
python3 -m venv venv
source ./venv/bin/activate
pip3 install -r requirements.txt
python3 manage.py collectstatic
python3 manage.py runserver