Esta página aplica-se ao Apigee, mas não ao Apigee Hybrid.
Veja a documentação do
Apigee Edge.
O tráfego de saída entre o Apigee e um back-end de destino com um endereço IP público usa o Cloud NAT para traduzir o endereço IP privado da sua instância do Apigee num endereço IP público. Se o seu back-end de destino exigir a autorização de IPs, pode reservar e ativar IPs NAT estáticos para o tráfego de saída. Este tópico descreve como calcular o número mínimo de IPs NAT estáticos necessários para suportar o tráfego previsto.
Antes de começar
Se optar por usar a atribuição de IP NAT estático para suportar a lista de autorizações, tem de calcular o número mínimo de IPs estáticos necessários para suportar o tráfego previsto. Para este cálculo, precisa das seguintes informações:
- Tempo máximo por transação: este é o tempo máximo, em segundos, que uma transação demora, desde o início do pedido até ao fim da resposta.
- Transações máximas por segundo (TPS): este é o número máximo de transações por segundo que a instância do Apigee pode suportar.
- TPS máximo para um único back-end exclusivo: este é o número máximo de transações por segundo que qualquer back-end único pode suportar.
- Número máximo de ambientes: o número máximo de ambientes nesta instância do Apigee.
Calcule o número de IPs estáticos necessários
Pode usar as seguintes fórmulas para calcular o número mínimo de IPs NAT que têm de ser atribuídos estaticamente:
- Calcule o número máximo de portas de origem NAT necessárias por back-end como $ S $.
$$ S = \lceil (150 + T) \times B \rceil $$
Onde:
- $ T $ é o tempo máximo por transação, em segundos.
- $ B $ é o TPS máximo para qualquer back-end único.
- $ \lceil \rceil $ é a função de limite superior (o número inteiro mais pequeno), o que significa arredondar para o número inteiro seguinte
- Calcule as portas mínimas usadas pela instância do Apigee como $ N $.
$$ N = max(4096 \times E, \lceil {512 \over 75} \times R \rceil) + 6144 $$
Onde:
- $ E $ é o número de ambientes do Apigee.
- $ R $ é o TPS máximo para a instância do Apigee.
- $ \lceil \rceil $ é a função de limite superior (o número inteiro mais pequeno), o que significa arredondar para o número inteiro seguinte
- A função $ \mathit{max}() $ usa o máximo dos dois valores.
- Considere o número máximo de portas necessárias como $ P $.
$$ P = max(S, N) $$
Onde:
- $ S $ é o número máximo de portas de origem NAT necessárias, conforme calculado no Passo 1.
- $ N $ é o número mínimo de portas usadas pela instância do Apigee, conforme calculado no passo 2.
- A função $ \mathit{max}() $ usa o máximo dos dois valores.
- Calcule o número mínimo de IPs NAT necessários como $ I $.
$$ I = \lceil P / 64512 \rceil $$
Onde:
- $ P $ é o número máximo de portas necessárias, calculado no Passo 3.
- $ \lceil \rceil $ é a função de limite superior (o número inteiro mais pequeno), o que significa arredondar para o número inteiro seguinte
Exemplos
Exemplo 1
Neste exemplo, esperamos um máximo de 10 000 TPS em 1 ambiente. As transações são todos pedidos HTTP GET
e a duração da transação do percentil 99 é de 50 milissegundos (ms). Estes pedidos são publicados de forma desigual por um conjunto de servidores atrás de 3 back-ends do balanceador de carga, com um dos balanceadores de carga a receber 5000 TPS, outro a receber 3000 TPS e o último a receber 2000 TPS.
Para este exemplo, os valores-chave são os seguintes:
- Tempo máximo por transação: 50 ms
- TPS máximo para a instância do Apigee: 10 000
- TPS máximo para um único back-end: 5000
- Número de ambientes do Apigee: 1
Usando as fórmulas descritas anteriormente, podemos calcular o número de IPs NAT necessários:
-
$$ \lceil (150 + 0.050) \times 5000 \rceil = \lceil 150.050 \times 5000 \rceil = \lceil 750250 \rceil = 750250 $$
O número máximo de portas de origem NAT necessárias por back-end, partindo do princípio de que não existe reutilização de ligações, é de 750 250.
-
$$ max(4096 \times 1, \lceil {512 \over 75} \times 10000 \rceil) + 6144 $$$$ max(4096, \lceil 6.827 \times 10000 \rceil) + 6144 $$$$ max(4096, \lceil 68270 \rceil) + 6144 $$$$ 68270 + 6144 = 74414 $$
O número mínimo de portas de origem NAT usadas pelo Apigee Runtime é 74 414.
-
$$ max(750250, 74414) = 750250 $$
O número máximo de portas de origem NAT necessárias por instância é 750 250.
-
$$ \lceil 750250 / 64512 \rceil = \lceil 11.630 \rceil = 12 $$
O número mínimo de IPs NAT necessários para suportar um máximo de 10 000 TPS de 50 ms cada (ou menos), com um único par de IP e porta de back-end a suportar um máximo de 5000 TPS, é de 12.
Exemplo 2
Neste exemplo, esperamos um máximo de 1000 TPS em 20 ambientes do Apigee. A duração do 99.º percentil destas transações é de 5 segundos. Estes pedidos são publicados por 8 back-ends de destino, com o tráfego normalmente distribuído uniformemente por todos eles. Tendo em conta a manutenção e as indisponibilidades, nunca se espera que um único back-end sirva mais de 250 TPS.
Para este exemplo, os valores-chave são os seguintes:
- Tempo máximo por transação: 5 s
- Máximo de transações por segundo (TPS): 1000
- TPS máximo para um único back-end: 250
- Número de ambientes do Apigee: 20
Usando as fórmulas descritas anteriormente, podemos calcular o número de IPs NAT necessários:
-
$$ \lceil (150 + 5) \times 250 \rceil = \lceil 155 \times 250 \rceil = \lceil 38750 \rceil = 38750 $$
O número máximo de portas de origem NAT necessárias por back-end, partindo do princípio de que não existe reutilização de ligações, é de 38 750.
-
$$ max(4096 \times 20, \lceil {512 \over 75} \times 1000 \rceil) + 6144 $$$$ max(81920, \lceil 6.827 \times 1000 \rceil) + 6144 $$$$ max(81920, \lceil 6827 \rceil) + 6144 $$$$ 81920 + 6144 = 88064 $$
O número mínimo de portas de origem NAT usadas pelo Apigee runtime é 88 064.
-
$$ max(38750, 88064) = 88064 $$
O número máximo de portas de origem NAT necessárias por instância é de 88 064.
-
$$ \lceil 88064 / 64512 \rceil= \lceil 1.365 \rceil= 2 $$
O número mínimo de IPs NAT necessários para suportar um máximo de 1000 TPS de 5 segundos cada (ou menos), com um único par de IP e porta de back-end a suportar um máximo de 250 TPS, é 2.
Exemplo 3
Neste exemplo, queremos calcular o TPS máximo alcançável com 2 IPs NAT para um único back-end de destino. O tempo máximo por transação é estimado em 100 ms.
Para este exemplo, os valores-chave são os seguintes:
- Tempo máximo por transação: 100 ms
- Número de IPs NAT: 2
Neste caso, podemos usar as fórmulas no passo 4 e no passo 1 para calcular o número máximo de portas de origem NAT fornecidas e o número de TPS que essas portas de origem podem suportar:
-
$$ 2 = \lceil P / 64512 \rceil $$$$ 129024 = P $$
O número máximo de portas de origem NAT fornecidas é 129 024.
-
$$ 129024 = \lceil (150 + 0.100) \times B \rceil $$$$ 129024 = \lceil 150.1 \times B \rceil $$$$ \lfloor 129024 / 150.1 \rfloor = B $$$$ \lfloor 859.587 \rfloor = B $$$$ 859 = B $$
O máximo de TPS é 859 com 2 IPs NAT para um único back-end, assumindo que não há reutilização de ligações.