Sobre o Redis
O Redis é um banco de dados NoSQL open source do modelo chave-valor em memória, que possui licenciamento BSD e pode ser utilizado como cache para o TOTVS Fluig Plataforma. Ele possui funcionalidades extras como a possibilidade de ser utilizado em cluster com tolerância a falhas (failover).
Site oficial: http://redis.io
© Redis, and the Redis logo are the trademarks of Salvatore Sanfilippo in the U.S. and other countries.
Pré requisito
- Ter o Redis instalado na máquina ou realizar o download do instalador nos links abaixo conforme o sistema operacional da máquina.
Download do Redis
- O download do instalador do Redis para Linux pode ser realizado neste link.
- O download do instalador do Redis para Windows pode ser realizado neste link.
Instalação do Redis em Modo Single-Server
O modo single-server significa que apenas um processo do Redis está no ar. Mesmo neste modo ele pode atender mais de um servidor Fluig, porém será considerado um ponto de falha.
Instalação do Redis como Serviço em Linux
Verifique também a documentação oficial.
A forma sugerida de instalar o Redis em Linux é compilá-lo a partir dos fontes, pois não há outras dependências além do compilador GCC e da biblioteca libc.
wget http://download.redis.io/redis-stable.tar.gz tar xvzf redis-stable.tar.gz cd redis-stable make make install
Vamos supor que você já copiou os executáveis redis-server e redis-cli em /usr/local/bin ou executou o comando make install.
Crie os seguintes diretórios:
sudo mkdir /etc/redis sudo mkdir /var/redis
Copie o script de inicialização disponibilizado no diretório utils para /etc/init.d. Sugerimos renomeá-lo com o nome da porta onde você está executando esta instância do Redis.
sudo cp utils/redis_init_script /etc/init.d/redis_6379
Edite o script de inicialização. Certifique-se de modificar o REDISPORT de acordo com a porta que você está usando. Tanto o caminho do arquivo pid quanto o nome do arquivo de configuração dependem do número da porta.
sudo vi /etc/init.d/redis_6379
Copie o arquivo de configuração modelo encontrado no diretório raiz da distribuição Redis em /etc/redis/ utilizando o número da porta como nome:
sudo cp redis.conf /etc/redis/6379.conf
Crie um diretório dentro de /var/redis que funcionará como os dados e diretório de trabalho para esta instância Redis:
sudo mkdir /var/redis/6379
Edite o arquivo de configuração:
Defina o pidfile para /var/run/redis_6379.pid (modificar a porta se necessário).
Altere a porta em conformidade. No nosso exemplo não é necessário, pois a porta padrão já é 6379.
Defina o seu loglevel preferido.
Defina o arquivo de log para /var/log/redis_6379.log
Definir o dir para /var/redis/6379 (passo muito importante!)
Procurar pelo parâmetro bind onde deve estar: bind 127.0.0.1
Altere esta linha para o IP externo de acesso para as instâncias do RealTime, exemplo :
Caso o IP da máquina seja 192.168.0.19 fica:
bind 192.168.0.19 127.0.0.1
Configuração
Caso não seja feito o bind para acesso dos servidor externo (máquinas que possuem a instalação do RealTime) as instâncias do Realtime não irão funcionar.
Importante
No arquivo de configuração por padrão a proteção de acesso está ativa, como configuramos o bind direto para o IP, este parâmetro deve ser setado para no:
protected-mode no
Após feitas as alterações:
Para subir o Redis no Linux execute o comando abaixo:
sudo /etc/init.d/redis_6379 start
Após subir, verifique no arquivo de log se não ocorreu nenhum erro: /var/log/redis_6379.log
Para parar o serviço, execute o comando:
sudo /etc/init.d/redis_6379 stop
Instalação do Redis como Serviço em Windows
Verifique também a documentação oficial.
Execute o seguinte comando:
redis-server.exe --service-install --service-name fluigcache redis.windows.conf
Configurando o Redis para uso com o Fluig
Procure no arquivo de configuração, o parâmetro maxmemory e certifique-se de configurar para o tamanho máximo desejado, caso contrário, podem ocorrer problemas de falta de memória.
maxmemory 1g
Observação
Se estiver sendo utilizada a versão 2.8 do Redis com o Windows, configure também o parâmetro maxheap.
Para que o Redis não salve um snapshot da memória periodicamente, procure as linhas iniciadas com a palavra "save" no arquivo de configuração:
save 900 1 save 300 10 save 60 10000
Altere-as para:
# save 900 1 # save 300 10 # save 60 10000 save ""
Para que o Redis grave um arquivo com o PID, defina o seguinte parâmetro:
daemonize yes
Após efetuar as configurações para uso no servidor Fluig, é necessário parar e subir o serviço do Redis, para que sejam aplicadas as configurações.