> ## Documentation Index
> Fetch the complete documentation index at: https://docs.airys.chat/llms.txt
> Use this file to discover all available pages before exploring further.

# Requisitos do Sistema

> Requisitos de hardware e software para auto-hospedar o AirysChat

Esta página inclui informações úteis sobre os requisitos necessários para instalar e executar o AirysChat em seus servidores.

## Sistemas Operacionais

### Distribuição Linux suportada

* Ubuntu (20.04)

A instalação do AirysChat é possível na maioria dos ambientes unix, mas não é oficialmente suportada.

### Microsoft Windows

O AirysChat é desenvolvido para sistemas operacionais baseados em Linux. Por favor, considere usar uma máquina virtual para executar o AirysChat no windows.

## Requisitos de software

### Versões do Ruby

* É necessário o Ruby 3.2 e posterior.

Você deve usar a implementação MRI padrão do Ruby. O AirysChat precisa de várias Gems que possuem extensões nativas.

### Versões do Node.js

Nós suportamos apenas o Node.js 10.13.0 ou superior.

Recomendamos o Node 20.x, pois é mais rápido e o mais recente.

O AirysChat usa o [webpack](https://webpack.js.org/) para compilar os assets do frontend, o que requer uma versão mínima do Node.js 20.x.0.

Você pode verificar qual versão está executando com `node -v`. Se estiver executando uma versão mais antiga que `v10.13.0`, você precisa atualizá-la para uma versão mais recente. Você pode encontrar instruções para instalar a partir de pacotes mantidos pela comunidade ou compilar a partir do código-fonte no [site do Node.js](https://nodejs.org/en/download/).

## Requisitos de hardware

### Armazenamento

O espaço necessário no disco rígido depende em grande parte do seu uso, do tamanho e do número de anexos que você recebe através de suas conversas, etc.

<Tip>
  Considere o uso de uma opção de armazenamento fornecida pela AWS, Azure, Google Cloud etc, se você quiser manter a flexibilidade e acomodar os crescentes requisitos de armazenamento. O AirysChat também suporta outros serviços compatíveis com a API do S3, como Minio, DigitalOcean Spaces, Linode Objects etc.
</Tip>

### CPU

Os requisitos de CPU dependem do uso e da carga de trabalho esperada. Sua carga de trabalho é influenciada por fatores como - mas não limitados a - o quão ativos são seus usuários, quantas conversas você recebe e os canais de conversação que você está usando.

O seguinte é a orientação mínima de hardware de CPU recomendada para um punhado de exemplos de tamanhos de base de conversas do AirysChat.

* **4 cores** é o número mínimo **recomendado** de núcleos e suporta até 10.000 conversas por dia.
* 8 cores suporta até 20.000 conversas por dia.
* Mais conversas? Considere escalar horizontalmente adicionando mais servidores de aplicação.

### Memória

Os requisitos de memória dependem do uso e da carga de trabalho esperada. Sua carga de trabalho é influenciada por fatores como - mas não limitados a - quão ativos são seus usuários, quantas conversas você recebe e os canais de conversação que você está usando.

O seguinte é a orientação mínima de hardware de memória recomendada para um punhado de exemplos de tamanhos de base de conversas do AirysChat.

* **4GB RAM** é o tamanho de memória mínimo **necessário** e suporta até 10.000 conversas por dia.
  * estamos sempre trabalhando para reduzir a necessidade de memória.
* 8GB RAM suporta até 20.000 conversas por dia.
* Mais conversas? Considere escalar horizontalmente adicionando mais servidores de aplicação.

<Note>
  Adicione pelo menos 1GB de memória swap à máquina para garantir que a máquina não fique sem recursos durante uma atualização.
</Note>

## Banco de Dados

PostgreSQL é o único banco de dados suportado. Não temos planos de suportar nenhuma outra alternativa no momento.

### Requisitos do PostgreSQL

O servidor que executa o PostgreSQL deve ter *pelo menos* 5-10 GB de armazenamento disponível, embora os requisitos exatos dependam do uso na sua Instância do AirysChat.

Recomendamos fortemente o uso das versões estáveis mais recentes do PostgreSQL, pois elas foram usadas para desenvolvimento e testes.

### Redis

O Redis armazena a fila de tarefas em segundo plano e várias configurações do airyschat em cache. Os requisitos de armazenamento para o Redis são mínimos, você pode começar com 100MB e escalar conforme necessário.

É recomendada a versão 7.0 ou superior do Redis

## Sidekiq

O Sidekiq processa os jobs em segundo plano com um processo multithread. Esse processo começa com toda a pilha Rails, mas pode crescer com o tempo devido a vazamentos de memória. Em um servidor muito ativo, o processo do Sidekiq pode usar 1GB+ de memória.

Você pode optar por ter tanto os workers do sidekiq quanto os servidores rails rodando na mesma máquina. Mas recomendamos manter o processo do worker e o servidor rails em servidores web separados para melhor escalabilidade.

## Navegadores web suportados

O AirysChat suporta os seguintes navegadores web:

* [Mozilla Firefox](https://www.mozilla.org/en-US/firefox/new/)
* [Google Chrome](https://www.google.com/chrome/)
* [Chromium](https://www.chromium.org/getting-involved/dev-channel)
* [Apple Safari](https://www.apple.com/safari/)
* [Microsoft Edge](https://www.microsoft.com/en-us/edge)

<Note>
  Nós não suportamos a execução do AirysChat com JavaScript desativado no navegador.
</Note>
