sql >> Database teknologi >  >> NoSQL >> Redis

Sådan installeres og konfigureres Redis på ElasticBeanstalk

Det accepterede svar er fantastisk, hvis du bruger ElastiCache (som RDS, men til Memcached eller Redis). Men hvis det, du forsøger at gøre, er at fortælle EB, at Redis skal klargøres i EC2-instansen, hvor den spinder din app op, vil du have en anden konfigurationsfil, noget som denne essens:

packages: 
  yum:
    gcc-c++: [] 
    make: []
sources:
  /home/ec2-user: http://download.redis.io/releases/redis-2.8.4.tar.gz
commands:
  redis_build:
    command: make
    cwd: /home/ec2-user/redis-2.8.4
  redis_config_001:
    command: sed -i -e "s/daemonize no/daemonize yes/" redis.conf
    cwd: /home/ec2-user/redis-2.8.4
  redis_config_002:
    command: sed -i -e "s/# maxmemory <bytes>/maxmemory 500MB/" redis.conf
    cwd: /home/ec2-user/redis-2.8.4
  redis_config_003:
    command: sed -i -e "s/# maxmemory-policy volatile-lru/maxmemory-policy allkeys-lru/" redis.conf
    cwd: /home/ec2-user/redis-2.8.4
  redis_server:
    command: src/redis-server redis.conf
    cwd: /home/ec2-user/redis-2.8.4

VIGTIG: Kommandoerne udføres i alfabetisk rækkefølge efter navn, så hvis du vælger andre navne end redis_build , redis_config_xxx , redis_server , sørg for, at de er sådan, at de udføres på den måde, du forventer.

Din anden mulighed er at containerisere din app med Redis ved hjælp af Docker og derefter implementere din app som et vist antal Docker-containere i stedet for hvilket sprog du end skrev den på. At gøre det for en Flask-app er beskrevet her.

Du kan jamme det hele i én container og implementere på den måde, hvilket er nemmere, men ikke skalerer godt, eller du kan bruge AWS' Elastic Beanstalk multi-container-implementeringer. Hvis du har brugt docker-compose , kan du bruge dette værktøj til at omdanne en docker-compose.yml ind i den form AWS ønsker, Dockerrun.aws.json .



  1. MongoDB $setEquals

  2. MongoDB $sqrt

  3. bedste praksis for django + PyMongo-pooling?

  4. MongoDB indsæt()