Esta página explica as diferenças entre os Frameworks de Endpoints para o ambiente padrão do App Engine e o proxy de serviço extensível (ESP), que é usado nos Cloud Endpoints para APIs que usam OpenAPI ou gRPC. Para mais informações sobre as opções de pontos finais, consulte o artigo Escolher uma opção de pontos finais.
Vista geral
O Cloud Endpoints é um sistema de gestão de APIs que ajuda a proteger, monitorizar, analisar e definir quotas nas suas APIs através da mesma infraestrutura que a Google usa para as suas próprias APIs. As funcionalidades de gestão de APIs incluem autenticação, chaves de API, monitorização, registo e rastreio independentemente da tecnologia usada para implementar a API. A funcionalidade de gestão de APIs é fornecida através do ESP ou da utilização dos Frameworks do Endpoints.
Proxy de serviço extensível
Nos pontos finais para OpenAPI e gRPC, os pedidos de API são retransmitidos através do proxy de serviço extensível, que valida as chaves e os tokens de autenticação e envia sinais (métricas e registos) através da API Service Control. A separação fornecida pelo ESP significa que pode escrever o código de back-end REST ou gRPC em qualquer idioma e pode usar o gRPC ou qualquer framework que suporte a descrição da API através da OpenAPI.
APIs using OpenAPI: The API backend can run on the App Engine flexible environment, Google Kubernetes Engine (GKE), Compute Engine, Kubernetes, or on-premises deployments.
APIs que usam gRPC: o back-end da API pode ser executado em implementações no GKE, no Compute Engine, no Kubernetes ou no local.
É enviado um pedido no seguinte caminho:
- É recebido um pedido do seu código e enviado para o ESP.
- O ESP envia um pedido de verificação para o controlo de serviços.
- Se configurou a sua API para exigir uma chave de API ou autenticação, o Service Control verifica se o pedido é permitido e envia uma resposta de volta para o ESP.
- Se o pedido não for permitido, o ESP rejeita-o. Se o pedido for permitido, é encaminhado para o código de back-end. De qualquer forma, o ESP regista informações sobre o pedido.
A preçário da gestão da API Endpoints depende do número de chamadas por mês.
Endpoints Frameworks
Para back-ends de API executados no ambiente padrão do App Engine, os Frameworks de Endpoints estão disponíveis para ajudar os programadores a começar rapidamente a publicar uma API. O Endpoints Frameworks é uma framework Web e é uma alternativa ao Python Flask ou ao Java Jersey. Os Endpoints Frameworks integram-se com a API Service Control, o que significa que um back-end que usa os Endpoints Frameworks não precisa de ser executado atrás do proxy de serviço extensível.
Se tiver ativado a gestão de APIs, é enviado um pedido no seguinte caminho:
- É recebido um pedido ao seu código e enviado para o módulo de gestão do Endpoints nos frameworks do Endpoints.
- O módulo de gestão de pontos finais envia um pedido de verificação para o controlo de serviços.
- Se configurou a sua API para exigir uma chave da API ou autenticação, o Service Control verifica se o pedido é permitido e envia uma resposta de volta para o módulo de gestão do Endpoints.
- Se o pedido não for permitido, o módulo de gestão de pontos finais rejeita o pedido. Se o pedido for permitido, é encaminhado para os Frameworks de API Google Cloud. De qualquer forma, o módulo de gestão de pontos finais regista informações sobre o pedido.
- O Endpoints Frameworks encaminha o pedido para o código do back-end.
Pode usar os Frameworks de Endpoints com ou sem a funcionalidade de gestão de APIs. A utilização dos frameworks do Endpoints sem a funcionalidade de gestão de APIs é oferecida sem custo financeiro. A funcionalidade de gestão de APIs é cobrada de acordo com a página de preços do Endpoints.
O Endpoints Frameworks só é suportado para serviços executados no ambiente padrão do App Engine. No Compute Engine, GKE, ambiente flexível do App Engine ou outros ambientes, os seus serviços têm de ser executados atrás do ESP.
Se o serviço estiver a ser executado atrás do ESP, pode escrever o código de back-end em qualquer linguagem e framework, como Python Flask, Java Jersey ou Node.js Express. Em tais ambientes, não é necessário usar os Frameworks de pontos finais para a gestão de APIs.
O que se segue?
Para obter informações sobre como adicionar a gestão de APIs:
Para obter informações sobre como remover a gestão de APIs: