버전 비교

  • 이 줄이 추가되었습니다.
  • 이 줄이 삭제되었습니다.
  • 서식이 변경되었습니다.
Sv translation
languageko_KR

이 문서는 Redis 설치 및 구성 방법에 대해서 다룹니다.


정보

Redis는 Linux, Windows 다양한 OS를 지원하지만, Linux 사용을 권장합니다.

  • 이 문서는 CentOS 기준으로 작성되었습니다. 

설치준비


  1. 다음 명령어를 실행하여 Redis-stable 버전을 다운로드합니다.

wget http://download.redis.io/redis-stable.tar.gz

설치


  1. tar xvzf redis-stable.tar.gz

  2. cd redis-stable

  3. make

  4. sudo make install

설정방법


  1. Redis Server
    sudo ./REDIS_PATH/src/redis-server (redis.conf)


정보

Redis의 경우 Single, Replication, Cluster 모드를 지원합니다.

  1. Single 모드의 경우 redis.conf에서 별다른 옵션을 수정하지 않으면 동작합니다.
  2. Replication 의 경우 slaveof,  masterauth 셋팅을 필수로 셋팅합니다.
  3. Cluster 모드의 경우 cluster-enabled, cluster-node-timeout 을 필수로 셋팅합니다.

Redis config file 설정


  1. MagicInfo Server config.properties
    1. cache.type = redis
    2. redis.config.path C:/redisSingle.json
  2. redis config 설정 

    • Cluster mode

    {
       "clusterServersConfig":{
          "idleConnectionTimeout":10000,
          "pingTimeout":1000,
          "connectTimeout":10000,
          "timeout":3000,
          "retryAttempts":3,
          "retryInterval":1500,
          "failedSlaveReconnectionInterval":3000,
          "failedSlaveCheckInterval":60000,
          "password":null,
          "subscriptionsPerConnection":5,
          "clientName":null,
          "loadBalancer":{
             "class":"org.redisson.connection.balancer.RoundRobinLoadBalancer"
          },
          "subscriptionConnectionMinimumIdleSize":1,
          "subscriptionConnectionPoolSize":50,
          "slaveConnectionMinimumIdleSize":32,
          "slaveConnectionPoolSize":64,
          "masterConnectionMinimumIdleSize":32,
          "masterConnectionPoolSize":64,
          "readMode":"SLAVE",
          "subscriptionMode":"SLAVE",
          "nodeAddresses":[
             "redis://REDIS_URL:REDIS_PORT",
             "redis://REDIS_URL:REDIS_PORT",
             "redis://REDIS_URL:REDIS_PORT"
          ],
          "scanInterval":1000,
          "pingConnectionInterval": 0,
          "keepAlive": false,
          "tcpNoDelay": false
       },
       "threads":0,
       "nettyThreads":0,
       "codec":{
          "class":"org.redisson.codec.SerializationCodec"
       },
       "transportMode":"NIO"
    }
    • Replicated mode

    {
       "replicatedServersConfig":{
          "idleConnectionTimeout":10000,
          "pingTimeout":1000,
          "connectTimeout":10000,
          "timeout":3000,
          "retryAttempts":3,
          "retryInterval":1500,
          "failedSlaveReconnectionInterval":3000,
          "failedSlaveCheckInterval":60000,
          "password":null,
          "subscriptionsPerConnection":5,
          "clientName":null,
          "loadBalancer":{
             "class":"org.redisson.connection.balancer.RoundRobinLoadBalancer"
          },
          "subscriptionConnectionMinimumIdleSize":1,
          "subscriptionConnectionPoolSize":50,
          "slaveConnectionMinimumIdleSize":32,
          "slaveConnectionPoolSize":64,
          "masterConnectionMinimumIdleSize":32,
          "masterConnectionPoolSize":64,
          "readMode":"SLAVE",
          "subscriptionMode":"SLAVE",
          "nodeAddresses":[
             "redis://REDIS_URL:REDIS_PORT",
             "redis://REDIS_URL:REDIS_PORT",
             "redis://REDIS_URL:REDIS_PORT"
          ],
          "scanInterval":1000,
       },
       "threads":0,
       "nettyThreads":0,
       "codec":{
          "class":"org.redisson.codec.SerializationCodec"
       },
       "transportMode":"NIO"
    }
    • Single instance mode

    {
       "singleServerConfig":{
          "idleConnectionTimeout":10000,
          "pingTimeout":1000,
          "connectTimeout":10000,
          "timeout":3000,
          "retryAttempts":3,
          "retryInterval":1500,
          "password":null,
          "subscriptionsPerConnection":5,
          "clientName":null,
          "address":"redis://REDIS_URL:REDIS_PORT",
          "subscriptionConnectionMinimumIdleSize":1,
          "subscriptionConnectionPoolSize":50,
          "connectionMinimumIdleSize":32,
          "connectionPoolSize":64,
          "database":0,
          "dnsMonitoringInterval":5000
       },
       "threads":0,
       "nettyThreads":0,
       "codec":{
          "class":"org.redisson.codec.SerializationCodec"
       },
       "transportMode":"NIO"
    }
    • Master slave mode

    {
       "masterSlaveServersConfig":{
          "idleConnectionTimeout":10000,
          "pingTimeout":1000,
          "connectTimeout":10000,
          "timeout":3000,
          "retryAttempts":3,
          "retryInterval":1500,
          "failedSlaveReconnectionInterval":3000,
          "failedSlaveCheckInterval":60000,
          "password":null,
          "subscriptionsPerConnection":5,
          "clientName":null,
          "loadBalancer":{
             "class":"org.redisson.connection.balancer.RoundRobinLoadBalancer"
          },
          "subscriptionConnectionMinimumIdleSize":1,
          "subscriptionConnectionPoolSize":50,
          "slaveConnectionMinimumIdleSize":32,
          "slaveConnectionPoolSize":64,
          "masterConnectionMinimumIdleSize":32,
          "masterConnectionPoolSize":64,
          "readMode":"SLAVE",
          "subscriptionMode":"SLAVE",
          "slaveAddresses":[
             "redis://REDIS_URL:REDIS_PORT",
             "redis://REDIS_URL:REDIS_PORT"
          ],
          "masterAddress": "redis://127.0.0.1:6379"
          "database":0
       },
       "threads":0,
       "nettyThreads":0,
       "codec":{
          "class":"org.redisson.codec.SerializationCodec"
       },
       "transportMode":"NIO"
    }

...