Você está lendo a documentação do Apigee Edge.
Acesse a documentação da
Apigee X. info
Como cliente do Apigee Edge, você pode migrar sua instalação para o Apigee X para aproveitar novos recursos ou disponibilidade regional diferente.
Nesta página, descrevemos antipadrões na sua configuração que precisam ser abordados antes da migração para o Apigee X, além de outras mudanças de comportamento que você precisa conhecer antes da migração.
A lista mais ampla de antipatterns do Apigee Edge descreve práticas de uso que devem ser evitadas em qualquer caso. Nesta página, descrevemos as práticas de uso não recomendadas específicas que bloqueiam uma migração. Resolva esses problemas agora para evitar problemas ao migrar para o Apigee X.
Apps sem produtos de API | ||||||||||||||||||||||||
| Resumo | Requer mudanças no lado do cliente? | Resolução | ||||||||||||||||||||||
|
Há apps sem produtos de API. Diferença entre a Apigee Edge e a Apigee X:
|
Não. |
Resolução: apps sem produtos de APIAssocie cada credencial de app a pelo menos um produto de API. Para mais informações sobre como fazer isso, consulte Registrar apps e gerenciar chaves de API. Uma maneira fácil é atribuir a cada app acesso a todos os produtos de API. Isso será o equivalente ao que é possível na Apigee Edge. O desafio será se você quiser seguir uma abordagem de "privilégio mínimo". Nesse caso, será necessário determinar a lista mínima de produtos de API a que cada credencial de app precisa ter acesso. É possível analisar isso com os relatórios do Apigee Edge Analytics, com base no ID do cliente. |
||||||||||||||||||||||
Cache sem tempo de expiração | ||||||||||||||||||||||||
| Resumo | Requer mudanças no lado do cliente? | Resolução | ||||||||||||||||||||||
|
Os caches não têm um tempo de expiração. Diferença entre a Apigee Edge e a Apigee X:
|
Não |
Resolução: cache sem prazo de validadeDefina um horário de expiração para todos os caches. |
||||||||||||||||||||||
Expressões de filtro JSONPath em caminhos não definitivos | ||||||||||||||||||||||||
| Resumo | Requer mudanças no lado do cliente? | Resolução | ||||||||||||||||||||||
|
Para caminhos não definitivos, consultar o resultado de uma expressão de filtro não faz parte da especificação JSONPath. Consulte https://goessner.net/articles/JsonPath/. Diferença entre a Apigee Edge e a Apigee X: Ao navegar por essa estrutura de exemplo, {
"books": [
{
"name": "A",
},
{
"name": "B",
}
]
}Com a expressão
Com a expressão
|
Sim |
Resolução: expressões de filtro JSONPath em caminhos não definitivosLocalize e substitua as consultas afetadas. |
||||||||||||||||||||||
Expressões JSONPath para índices que não estão presentes | ||||||||||||||||||||||||
| Resumo | Requer mudanças no lado do cliente? | Resolução | ||||||||||||||||||||||
|
As expressões JSONPath com um índice que não está presente têm comportamentos diferentes no Apigee X
em comparação com o Apigee Edge. O Apigee X retorna um erro Diferença entre a Apigee Edge e a Apigee X: Ao navegar por essa estrutura de exemplo, {
"books": [
{
"name": "A",
},
{
"name": "B",
}
]
}Com a expressão
|
Sim |
Resolução: expressões JSONPath para índices que não estão presentesLocalize e substitua as consultas afetadas. |
||||||||||||||||||||||
Expressões JSONPath com um índice de matriz que não retornam um objeto de matriz | ||||||||||||||||||||||||
| Resumo | Requer mudanças no lado do cliente? | Resolução | ||||||||||||||||||||||
|
Expressões JSONPath com um índice ou intervalos de matriz retornam um objeto de matriz no Apigee X. Diferença entre a Apigee Edge e a Apigee X: Ao navegar por essa estrutura de exemplo, {
"books": [
{
"name": "A",
},
{
"name": "B",
}
]
}Com a expressão
Com a expressão
Com a expressão
|
Sim |
Resolução: expressões JSONPath com um índice de matriz que não retornam um objeto de matrizEncontre e substitua expressões que podem retornar resultados diferentes após o upgrade. |
||||||||||||||||||||||
Restrições de nome do keystore |
||||||||||||||||||||||||
| Resumo | Requer mudanças no lado do cliente? | Resolução | ||||||||||||||||||||||
|
Os nomes de keystore do Apigee X só podem conter letras, números e hífens. Os nomes de keystore do Edge não impõem essas restrições. |
Não |
Resolução: restrições de nome da keystoreVerifique os nomes dos keystores e atualize-os para remover caracteres incompatíveis, se necessário. |
||||||||||||||||||||||
Vários caminhos base implantados para um proxy de API |
||||||||||||||||||||||||
| Resumo | Requer mudanças no lado do cliente? | Resolução | ||||||||||||||||||||||
|
Várias revisões de um proxy de API são implantadas em um ambiente e cada revisão tem um caminho base diferente. Diferença entre a Apigee Edge e a Apigee X:
|
Não |
Resolução: vários caminhos base implantados para um proxy de APIAtualize todos os pacotes para que apenas uma revisão de um pacote seja implantada em um ambiente, independente do basepath. |
||||||||||||||||||||||
Mensagens HTTP não compatíveis |
||||||||||||||||||||||||
| Resumo | Requer mudanças no lado do cliente? | Resolução | ||||||||||||||||||||||
|
Os clientes ou o proxy de API enviam mensagens (solicitações ou respostas) que não estão em conformidade com o padrão HTTP. Por exemplo, nomes de cabeçalho inválidos, duplicações em alguns cabeçalhos restritos etc. Não é possível migrar para o Apigee X se a execução da API tiver um ou mais dos seguintes erros:
|
Sim, possivelmente. |
Resolução: mensagens HTTP não compatíveisÉ necessário corrigir todos os erros nos protocolos HTTP antes de migrar para o Apigee X. Se um erro tiver origem em um aplicativo cliente, peça ao desenvolvedor dele para corrigir o problema. |
||||||||||||||||||||||
Tempo de expiração do token OAuth 2.0 inválido |
||||||||||||||||||||||||
| Resumo | Requer mudanças no lado do cliente? | Resolução | ||||||||||||||||||||||
|
Os limites de expiração do token OAuth 2.0 estão fora do intervalo prescrito. Diferença entre a Apigee Edge e a Apigee X:
|
Não |
Resolução: tempo de expiração do token OAuth 2.0 inválido
Use a política OAuthV2 e especifique o tempo de expiração em
|
||||||||||||||||||||||
Limite de produtos excedido |
||||||||||||||||||||||||
| Resumo | Requer mudanças no lado do cliente? | Resolução | ||||||||||||||||||||||
|
A configuração do Apigee Edge não está em conformidade com os limites de produto definidos. Alguns limites de produtos documentados, mas não aplicados no Apigee Edge, são aplicados no Apigee X. |
Não |
Resolução: limites de produtos excedidosCorrija qualquer uso que exceda os limites de produtos antes de migrar para o Apigee X. |
||||||||||||||||||||||
Políticas ServiceCallout com especificadores de conexão de destino de endpoint e caminho |
||||||||||||||||||||||||
| Resumo | Requer mudanças no lado do cliente? | Resolução | ||||||||||||||||||||||
|
Na política ServiceCallout, o elemento
O Apigee Edge documenta esse requisito, mas não o aplica. A Apigee X interrompe o processamento se encontrar um |
Não |
Resolução: políticas ServiceCallout com especificadores de conexão de destino de endpoint e caminho
Verifique as configurações da política ServiceCallout e elimine as configurações |
||||||||||||||||||||||
Restrições de nome do servidor de destino |
||||||||||||||||||||||||
| Resumo | Requer mudanças no lado do cliente? | Resolução | ||||||||||||||||||||||
|
Os nomes de servidores de destino do Apigee X só podem conter letras, números, hífens e pontos. Os nomes de servidores de destino do Edge não impõem essas restrições. |
Não |
Resolução: restrições de nome do servidor de destinoVerifique os nomes dos servidores de destino e atualize-os para remover caracteres não compatíveis, se necessário. |
||||||||||||||||||||||
Certificado de teste em um host virtual |
||||||||||||||||||||||||
| Resumo | Requer mudanças no lado do cliente? | Resolução | ||||||||||||||||||||||
|
Um ou mais hosts virtuais usam o certificado de "teste sem custos financeiros" fornecido pela Apigee. Isso faz com que o host virtual responda a solicitações em domínios como Diferença entre a Apigee Edge e a Apigee X:
|
Sim |
Resolução: certificado de teste em um host virtualVocê precisa configurar seu próprio domínio e provisionar certificados adequadamente.
Qualquer aplicativo cliente que dependa do nome de domínio legado do formulário |
||||||||||||||||||||||
DNS não resolvido |
||||||||||||||||||||||||
| Resumo | Requer mudanças no lado do cliente? | Resolução | ||||||||||||||||||||||
|
Os endpoints de destino têm nomes de domínio não resolvidos. Diferença entre a Apigee Edge e a Apigee X:
|
Não |
Resolução: DNS não resolvidoAtualize o endpoint de destino com um nome de domínio válido. |
||||||||||||||||||||||