Device Groups
Device Groups é uma capacidade de Edge Application que permite identificar os dispositivos que enviam requisições à sua aplicação e categorizá-los em grupos. Você pode usar Device Groups para definir comportamentos personalizados e definir políticas de cache com base nos grupos que você criar.
- Como funciona
- Uso
2.1. Rules Engine
2.2. Adaptive Delivery- Priorização
1. Como funciona
Usuários que acessam aplicações criadas com o Real-Time Manager (RTM) enviam dados para a Azion através de HTTP request headers, ou cabeçalhos de requisição. O cabeçalho User-Agent
guarda informações sobre o navegador do usuário, sistema operacional, versão e fabricante. O cabeçalho possui a seguinte sintaxe:
User-Agent: <product>/<product-version> <comment>
Sendo:
product
: identificador de produto.product-version
: versão do produto.comment
: informação sobre o sistema, plataformas e extensões.
Por exemplo, o seguinte cabeçalho User-Agent
aponta para um acesso de um sistema operacional Windows usando o navegador Mozilla Firefox:
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0
Device Groups identifica se uma expressão regular definida por você se encaixa no conteúdo do cabeçalho User-Agent
. Uma vez que você cria um grupo, você pode configurar uma regra ou uma política de cache especificamente para os dispositivos contidos no grupo.
Para criar um grupo, siga os passos:
- Accesse o RTM.
- No canto superior esquerdo, vá para Products menu > Edge Application.
- Clique na aplicação que você deseja configurar ou crie uma nova.
- Selecione a aba Device Groups.
- Clique no botão Add Device Group.
- Dê um nome ao seu grupo.
- Adicione o conteúdo que o cabeçalho
User-Agent
deve conter no formato regex, seguindo o padrão PCRE. - Clique no botão Save.
2. Uso
Device Groups podem ser usados para identificar e categorizar os dispositivos que enviam requisições a sua aplicação.
Por exemplo, você pode criar um grupo chamado Mobile cuja expressão regular deve corresponder ao conteúdo dentro do cabeçalho User-Agent
que identifica dispositivos móveis. A seguinte expressão pode ser utilizada para identificar a maioria dos dispositivos móveis existentes:
(Mobile|iP(hone|od)|BlackBerry|IEMobile)
O grupo Mobile pode então ser referenciado na guia Rules Engine de sua aplicação ou na guia Cache Settings.
2.1. Rules Engine
Quando você cria uma regra, você pode utilizar a variável ${device_group}
no Rules Engine para definir quais comportamentos sua aplicação deve executar para os grupos que você criou. Para fazer referência a um grupo de dispositivos, você pode adicionar seu nome à seção de argumentos depois de selecionar o operador de comparação desejado.
Para ativar esta variável, você deve habilitar Application Acceleration.
O seguinte critério identifica se a solicitação do usuário vem de um dispositivo que corresponda a um grupo de dispositivos chamado Mobile:
Variável | Operador de comparação | Argumento | |
---|---|---|---|
If | ${device_group} |
is equal to | Mobile |
O Rules Engine também pode ser usado para identificar dispositivos utilizando a variável ${http_user_agent}
diretamente, adicionando uma string ou expressão regular como argumento. Dessa forma, você pode identificar dispositivos específicos sem ter que dedicar um grupo de dispositivos a eles.
Os seguintes critérios identificam se a requisição do usuário vem de um dispositivo iPhone:
Variável | Operador de comparação | Argumento | |
---|---|---|---|
If | ${http_user_agent} |
matches | (?i)iPhone |
Saiba mais sobre o Rules Engine.
2.2. Adaptive Delivery
Na guia Cache Settings de Edge Application, você pode referenciar um grupo de dispositivos existente para Adaptive Delivery.
Ao escolher a opção Content varies by some Device Groups (Whitelist), você permite que a Azion mantenha variações baseadas em dispositivos de seus objetos no cache.
Você pode escolher um ou mais grupos para aplicar as mesmas políticas de Adaptive Delivery. Para ativar essa funcionalidade, entre em contato com nossa equipe de vendas.
Saiba mais sobre Cache Settings.
3. Prorização
Device Groups priorizam combinações em sequência, independentemente da ordem dentro do cabeçalho User-Agent
da solicitação. Dada a seguinte lista de grupos:
Device Group | Expressão regular |
---|---|
Mobile | (Mobile|Android) |
Tablet | (iPad|Android) |
Desktop | (Chrome|Mozilla) |
Se a requisição for feita por um dispositivo que contenha Android Tablet Mobile (Mozilla Firefox)
em seu cabeçalho, as palavras Android
e Mobile
corresponderão ao grupo Mobile.
Para uma solicitação de um dispositivo iPad Apple Webkit Mobile
, ele também será identificado como Mobile devido à presença de Mobile
dentro da solicitação, apesar do iPad
corresponder ao grupo de dispositivos Tablet.
Ao estabelecer suas regras, lembre-se que cabeçalhos User-Agent
para dispositivos diferentes podem conter as mesmas palavras. Por exemplo: Google Chrome Android
provavelmente identifica um dispositivo móvel enquanto Google Chrome Symbian
é um cabeçalho que identifica um computador; ambos utilizaram a mesma aplicação Google Chrome para acessar a aplicação. Certifique-se de ser preciso ao criar grupos de dispositivos.
Não encontrou o que procurava? Abra um ticket.