Esta página aplica-se ao Apigee e ao Apigee Hybrid.
Veja a documentação do
Apigee Edge.
As funcionalidades de persistência do Apigee incluem caches, mapas de valores-chave e conjuntos de propriedades. Se estiver a usar o Apigee hybrid, pode usar segredos do Kubernetes para persistir dados confidenciais.
Funcionalidade | Utilizar |
---|---|
Caches | Ao usar políticas para o armazenamento em cache de uso geral, pode persistir quaisquer objetos que o seu proxy
exija em várias sessões de pedido/resposta. Também pode colocar em cache a resposta de um recurso de back-end com a política
ResponseCache . O armazenamento em cache de respostas é especialmente útil quando os dados de back-end são atualizados apenas periodicamente. A política ResponseCache pode reduzir as chamadas a origens de dados de back-end. |
Mapas de chaves-valores | Os mapas de pares chave-valor (KVMs) oferecem um armazenamento de tempo de execução geral para dados que podem mudar periodicamente. Por exemplo: dados da sessão do utilizador, carrinho de compras, etc. As entradas de KVM podem ser encriptadas. |
Definições de propriedade | Os conjuntos de propriedades são adequados para armazenar dados de configuração que não mudam com frequência. |
Segredos do Kubernetes | (Apenas para o Apigee hybrid) Use segredos para armazenar dados confidenciais, como credenciais de utilizador. |
A colocar em cache
Os recursos de cache com âmbito de ambiente são criados dinamicamente quando uma política de cache é executada num fluxo de proxy de API. As políticas de cache incluem a política PopulateCache, a política LookupCache, a política InvalidateCache e a política ResponseCache.
Um item em cache permanece na memória (L1) durante um segundo. Não pode alterar esta configuração. Após um segundo, o objeto em cache é colocado numa base de dados (L2) onde fica disponível até a cache expirar. Para ver detalhes, consulte o artigo Níveis de cache persistente na memória. Pode gerir os detalhes da cache, como o tempo de expiração, através da configuração de uma política de cache. É fornecida uma API Apigee que lhe permite listar e eliminar recursos de cache.
Quando usa políticas de cache, garante a exclusividade das chaves de valores em cache ao configurar chaves de cache. Uma chave de cache, juntamente com outros valores que pode configurar, oferece-lhe uma forma fiável de obter os mesmos dados que introduziu. O tamanho da cache e a disponibilidade estão sujeitos a determinados limites.
Pode usar uma cache para:
- Reduzir a latência e o tráfego. Os pedidos são satisfeitos num período mais curto e com representações reutilizadas.
- Persistir dados entre transações. Pode armazenar dados de sessão para reutilização em transações HTTP.
- Apoie a segurança. Restrinja o acesso às entradas da cache para que só possam ser acedidas num ambiente específico ou por um proxy de API específico.
Colocação em cache de respostas de back-end
Pode colocar em cache a resposta de um recurso de back-end com a política ResponseCache
.
Isto é particularmente útil quando os dados de back-end são atualizados apenas periodicamente. A política ResponseCache
pode reduzir as chamadas a origens de dados de back-end.
Através da política ResponseCache
, também pode fazer com que o Apigee analise determinados cabeçalhos de colocação em cache de respostas HTTP e tome medidas de acordo com as diretivas de cabeçalho. Por exemplo, nas respostas de destinos de back-end, o Apigee suporta o cabeçalho Cache-Control
. Este cabeçalho pode ser usado para controlar, entre outras coisas, a idade máxima de uma resposta em cache. Para mais informações, consulte o artigo
Compatibilidade com cabeçalhos de resposta HTTP.
Colocação em cache de utilização geral a curto prazo
Ao usar políticas para o armazenamento em cache de uso geral, pode persistir quaisquer objetos que o seu proxy exija em várias sessões de pedido/resposta.
Com a PopulateCache
política, a LookupCache
política e a política InvalidateCache
,
pode preencher, obter e limpar dados em cache no tempo de execução.
Por exemplo, pode armazenar temporariamente:
- IDs de sessão para gestão de sessões.
- Credenciais para chamadas de saída (como chaves da API ou tokens de acesso OAuth).
- Conteúdo da resposta que tem de ser paginado para apps.
Em tempo de execução, as suas políticas de cache copiam valores entre variáveis de proxy e a cache configurada que especificar. Quando um valor é colocado na cache, é copiado da variável especificada para a cache. Quando é obtido a partir da cache, é copiado para a variável para utilização pelo seu proxy.
Para ver um exemplo com código, consulte o artigo Exemplo: colocação em cache de uso geral.
Gerir a cache com a API Apigee
Pode listar e eliminar caches através da API caches.
Persistência a longo prazo com mapas de chaves-valores (KVMs)
Para armazenar dados estruturados indefinidamente, encriptados ou não encriptados, pode criar e preencher mapas de chaves-valores (KVMs) que contenham pares chave/valor arbitrários. Por exemplo, pode armazenar:
- Um mapa que correlaciona endereços IP com códigos de países.
- Uma lista de endereços IP aos quais o acesso é permitido/negado.
- Um mapa que correlaciona URLs longos com URLs abreviados.
- Dados específicos do ambiente, como contagens de quotas e horas de validade do token OAuth.
Os KVMs podem ter um de três âmbitos: organização, ambiente e apiproxy. Por exemplo, se os pares de chave-valor forem usados para todas as APIs numa organização, crie um KVM ao nível da organização. Se apenas um proxy de API específico tiver acesso a chaves/valores, crie o KVM ao nível do proxy de API. Para mais informações, consulte o artigo Trabalhar com mapas de chaves-valores.
Definições de propriedade
Um conjunto de propriedades é uma coleção personalizada de pares de chave/valor que armazenam dados. Os proxies de API podem obter estes dados quando são executados.
Normalmente, usa conjuntos de propriedades para armazenar dados que não expiram e que não devem ser codificados de forma rígida na lógica do proxy de API, como dados de configuração. Pode aceder aos dados do conjunto de propriedades em qualquer lugar num proxy onde possa aceder a variáveis de fluxo.
Um exemplo de utilização comum para conjuntos de propriedades é fornecer valores associados a um ambiente ou outro. Por exemplo, pode criar um conjunto de propriedades com âmbito de ambiente com valores de configuração específicos dos proxies em execução no seu ambiente de teste e outro conjunto para o seu ambiente de produção.
Para mais informações, consulte o artigo Usar conjuntos de propriedades.
Segredos do Kubernetes
(Apenas para o Apigee híbrido) Se já estiver a usar o Kubernetes para a gestão de segredos num cofre personalizado para dados confidenciais, é recomendável considerar a utilização de segredos do Kubernetes. Tal como acontece com os dados KVM, pode aceder aos dados secretos do Kubernetes nas variáveis de fluxo do proxy de API. Para mais informações, consulte o artigo Armazenar dados num segredo do Kubernetes.