Entenda mais sobre a lista de objetos do RAM Cache, um recurso do Big-IP LTM que faz offload de requisições de objetos estáticos dos servidores Web.
RAM cache é um recurso disponível no modulo LTM do BIG-IP e é utilizado em Virtual Servers de camada 7 de conteúdo HTTP/HTTPS. Este recurso auxilia no processo de offload (redução de carga) nos servidores que disponibilizam o conteúdo.
A abertura de uma página web consiste em vários GETS, solicitações aos servidores de objetos que compõem a página web. Imagine que para abrir o site são necessários 180 objetos e existem 10.000 usuários acessando no mesmo instante. Fazendo uma conta rápida, temos 180 x 10.000=1,8 milhões de objetos sendo requisitados ao servidor simultaneamente, consumindo processamento, memória e tabela de conexões.
Veja este exemplo em que os usuários estão requisitando o objeto da página:
Imagem 1: Sem RAM cache habilitado.
Neste caso, foram necessárias duas requisições e entrega destes objetos dos servidores para os browsers dos usuários. Se pensarmos em larga escala seriam milhares de conexões e entrega do mesmo conteúdo, aumentando consideravelmente o uso dos servidores.
Com RAM cache, o BIG-IP solicita o objeto apenas uma vez em um determinado período e, a partir daí, disponibiliza o conteúdo a partir da sua memória RAM, não sendo necessário requisitar aos servidores o tempo todo, como pode ser visto abaixo:
Imagem2: Com RAM cache habilitado
Desta forma, os servidores não sofrerão sobrecarga de solicitações e não precisarão entregar o volume total solicitado, aumentando a disponibilidade e capacidade de entrega dos servidores.
O RAM cache pode ser usado para entregar os seguintes tipos de respostas: 200, 203, 206, 300, 301 e 410 e por padrão o método HTTP GET.
Para habilitar esses profiles no Virtual Server vá em:
Profile -> Services -> Web Acceleration
Imagem 3: Como criar um profile de RAM cache, versão 11.3.
Dentre as opções à serem configuradas temos:
Parâmetro | Descrição |
Maximum Cache Size | Especifica o máximo de memoria RAM em megabytes. Quando atinge o limite o BIG-IP remove o conteúdo de cache mais antigo. |
Maximum Entries | Especifica o numero máximo de entradas que poderão ser alocadas no RAM cache. |
Maximum Age | Especifica quanto tempo em segundos, o conteúdo em cache será válido. |
Minimum Object Size | Especifica o menor objeto em bytes que será considerado válido para cache. |
Maximum Object Size | Especifica o maior objeto em bytes que será considerado válido para cache. |
URI Caching | Aqui se define a lista de objetos que serão cacheados no BIG-IP.
Pin List: Lista de URIs que deseja incluir no RAM cache Include List: Lista de URIs que normalmente são inelegíveis, mas que se deseja armazenar em cache. Pode incluir métodos GET e outro, incluindo não HTTP. Exclude List:Lista de URIs que não se deseja armazenar em RAM cache. Include Override List:Configura uma lista de URIs que devem ser armazenados em cache, mesmo que devido a restrições definidas como tamanho do objetos e outras , não seriam armazenados. |
Ignore Headers | Especifica como o BIG-IP processará o lado cliente:
All: Desconsidera todo controle de cache do cabeçalho. Cache-Control:max-age: Ignora apenas o cabeçalho cache-control:max-age. None: Aceita todos os controles de cabeçalho |
Insert Age Header | Insere os parâmetros Date e Age configurados no BIG-IP no cabeçalho. |
Aging Rate | Determina quão rápido o sistema libera o cache de entrada. Vai de 0 (mais lento a 10(mais rápido) |
WA Applications | Quando o BIG-IP tiver o modulo de Web Accelerator licenciado, é possível incluir controles do mesmo. |
Um conteúdo estático normalmente muito utilizado para fazer offload são as imagens JPEG. Abaixo, um exemplo de como permitir cache de conteúdo JPEG e exclusão de objetos javascript:
Imagem 4: Configurando lista de objetos no RAM cache.
Basicamente, você precisa especificar o content type do objeto para identificar o que dever ser incluído ou excluído do RAM cache. Para descobrir, basta apertar a F12 em seu navegador e capturar o que está sendo baixado e observar o campo “tipo”.
Imagem 5: Capturando informações da página com navegador.
Com RAM cache é possível fazer offload dos servidores e ter um ganho de performance considerável em aplicações web, além de reduzir o número de servidores na infraestrutura. Existem casos em que, após ativar este recurso, o número de servidores necessários para atender um serviço cai em mais de 50%.