Cloud Endpoints는 Google에서 자체 API에 사용하는 것과 동일한 인프라를 사용하여 API를 보호, 모니터링, 분석하고 할당량을 설정하는 데 도움이 되는 API 관리 시스템입니다. API 관리 기능에는 API 구현에 사용되는 기술과 무관한 인증, API 키, 모니터링, 로깅, 추적이 포함됩니다. API 관리 기능은 ESP나 Cloud Endpoints 프레임워크를 통해 제공됩니다.
확장 가능 서비스 프록시
OpenAPI 및 gRPC용 Endpoints에서 API 요청은 키와 인증 토큰을 검증하고 Service Control API를 사용하여 신호 (측정항목 및 로그)를 전송하는 Extensible Service Proxy를 통해 리레이됩니다. ESP에서 제공하는 분리는 어떤 언어로든 REST 또는 gRPC 백엔드 코드를 작성할 수 있고 gRPC 또는 OpenAPI를 사용하여 API 설명을 지원하는 모든 프레임워크를 사용할 수 있다는 것을 의미합니다.
OpenAPI를 사용하는 API: API 백엔드는 App Engine 가변형 환경, Google Kubernetes Engine(GKE), Compute Engine, Kubernetes 또는 온프레미스 배포에서 실행할 수 있습니다.
gRPC를 사용하는 API: API 백엔드는 GKE, Compute Engine, Kubernetes 또는 온프레미스 배포에서 실행할 수 있습니다.
다음 경로를 통해 요청이 전송됩니다.
코드에 대한 요청이 수신되고 ESP로 전송됩니다.
ESP가 Service Control에 확인 요청을 보냅니다.
API 키나 인증을 요구하도록 API를 구성한 경우 Service Control이 요청 허용 여부를 확인하고 ESP로 다시 응답을 보냅니다.
요청이 허용되지 않으면 ESP가 요청을 거부합니다. 요청이 허용되면 백엔드 코드에 전달됩니다. 두 경우 모두 ESP가 요청에 대한 정보를 로깅합니다.
App Engine 표준 환경에서 실행되는 API 백엔드의 경우 개발자가 API를 신속하게 제공할 수 있도록 Endpoints Frameworks를 사용할 수 있습니다. Endpoints Frameworks는 웹 프레임워크이며 Python Flask 또는 Java Jersey 대신 사용할 수 있습니다.
Endpoints 프레임워크는 Service Control API와 통합됩니다. 이는 Endpoints 프레임워크를 사용하는 백엔드가 확장 가능 서비스 프록시 뒤에서 실행될 필요가 없음을 의미합니다.
API 관리를 사용 설정한 경우 다음 경로를 통해 요청이 전송됩니다.
코드에 대한 요청이 수신되고 Endpoints 프레임워크 내의 Endpoints 관리 모듈로 전송됩니다.
Endpoints 관리 모듈이 Service Control에 대한 확인 요청을 보냅니다.
API 키나 인증을 요구하도록 API를 구성한 경우 Service Control이 요청 허용 여부를 확인하고 Endpoints 관리 모듈로 다시 응답을 보냅니다.
요청이 허용되지 않으면 Endpoints 관리 모듈이 요청을 거부합니다. 요청이 허용되면 Endpoints Frameworks에 전달됩니다. 두 경우 모두 Endpoints 관리 모듈이 요청에 대한 정보를 로깅합니다.
Endpoints 프레임워크가 요청을 백엔드 코드로 라우팅합니다.
API 관리 기능을 포함하거나 포함하지 않고 Endpoints 프레임워크를 사용할 수 있습니다. API 관리 기능 없이 Endpoints 프레임워크를 사용하는 것은 무료입니다. API 관리 기능 비용은 Endpoints 가격 책정 페이지에 따라 청구됩니다.
Endpoints 프레임워크는 App Engine 표준 환경에서 실행 중인 서비스에서만 지원됩니다. Compute Engine, GKE, App Engine 가변형 환경 또는 기타 환경에서는 서비스가 ESP 뒤에서 실행되어야 합니다.
서비스가 ESP 뒤에서 실행되는 경우 Python Flask, 자바 Jersey 또는 Node.js Express와 같은 모든 언어와 프레임워크로 백엔드 코드를 작성할 수 있습니다. 이러한 환경에서는 API 관리를 위해 Endpoints 프레임워크를 사용할 필요가 없습니다.
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["이해하기 어려움","hardToUnderstand","thumb-down"],["잘못된 정보 또는 샘플 코드","incorrectInformationOrSampleCode","thumb-down"],["필요한 정보/샘플이 없음","missingTheInformationSamplesINeed","thumb-down"],["번역 문제","translationIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2025-09-04(UTC)"],[[["\u003cp\u003eCloud Endpoints provides API management features like authentication, monitoring, and logging, either through the Extensible Service Proxy (ESP) or Endpoints Frameworks.\u003c/p\u003e\n"],["\u003cp\u003eThe Extensible Service Proxy (ESP) handles API requests for OpenAPI and gRPC, allowing backend code to be written in any language and deployed across various environments like GKE, Compute Engine, and on-premises.\u003c/p\u003e\n"],["\u003cp\u003eEndpoints Frameworks is specifically designed for API backends running on the App Engine standard environment, offering a web framework alternative to Flask or Jersey, and integrating directly with the Service Control API.\u003c/p\u003e\n"],["\u003cp\u003eEndpoints Frameworks is the only way to obtain API management features on the App Engine standard environment, and it supports only Python 2.7 and Java 8 runtime environments.\u003c/p\u003e\n"],["\u003cp\u003eAPI management functionality through either ESP or Endpoints Frameworks is charged based on the number of calls per month, while using Endpoints Frameworks without API management is offered at no charge.\u003c/p\u003e\n"]]],[],null,["# Comparing Extensible Service Proxy and Cloud Endpoints Frameworks\n\nThis page explains the differences between Endpoints Frameworks for\nthe App Engine standard environment and the\n[Extensible Service Proxy (ESP)](/endpoints/docs/frameworks/glossary#extensible_service_proxy),\nwhich is used in Cloud Endpoints for APIs using\n[OpenAPI](/endpoints/docs/openapi)\nor\n[gRPC](/endpoints/docs/grpc/about-grpc).\nFor more information about the Endpoints options, see\n[Choosing an Endpoints option](/endpoints/docs/choose-endpoints-option).\n\nOverview\n--------\n\nCloud Endpoints is an API management system that helps you secure, monitor,\nanalyze, and set quotas on your APIs using the same infrastructure Google uses\nfor its own APIs. API management features includes authentication, API keys,\nmonitoring, logging, and tracing independent of the technology used to implement\nthe API. API management functionality is provided through ESP or\nby using the Endpoints Frameworks.\n\nExtensible Service Proxy\n------------------------\n\nIn Endpoints for OpenAPI and gRPC, API requests are relayed\nthrough the Extensible Service Proxy, which validates keys and authentication tokens and\nsends signals (metrics and logs) by using the\n[Service Control](/service-control/overview)\nAPI. The separation provided by ESP means that you can write the\nREST or gRPC backend code in any language, and you can use gRPC or any framework\nthat supports API description using OpenAPI.\n\n- APIs using OpenAPI: The API backend can run on the App Engine flexible\n environment, Google Kubernetes Engine (GKE), Compute Engine, Kubernetes, or\n on-premises deployments.\n\n- APIs using gRPC: The API backend can run on GKE,\n Compute Engine, Kubernetes, or on-premises deployments.\n\nA request is sent on the following path:\n\n1. A request to your code is received and is sent to ESP.\n2. ESP sends a check request to Service Control.\n3. If you configured your API to require an API key or authentication, Service Control checks to see if the request is permitted and sends a response back to ESP.\n4. If the request isn't permitted, ESP rejects the request. If the request is permitted, it is forwarded to your backend code. Either way, ESP logs information about the request.\n\n[Pricing of Endpoints API management](/endpoints/pricing)\ndepends on the number of calls per month.\n\nEndpoints Frameworks\n--------------------\n\nFor API backends running on the App Engine standard environment,\nEndpoints Frameworks is available to help developers quickly get\nstarted serving an API. Endpoints Frameworks is a\n[web framework](https://wikipedia.org/wiki/Web_framework)\nand is an alternative to Python Flask or Java Jersey.\nEndpoints Frameworks integrates with\nthe Service Control API, meaning a backend that uses\nEndpoints Frameworks doesn't need to run behind the Extensible Service Proxy.\n| **Note:** Endpoints Frameworks is the only way to get API management functionality, such as monitoring, logging, and API keys, on the App Engine standard environment. Only the [Python 2.7 and Java 8 runtime environments](/appengine/docs/standard/runtimes) are supported.\n\nIf you have enabled API Management, a request is sent on the following path:\n\n1. A request to your code is received and is sent to the Endpoints Management module within Endpoints Frameworks.\n2. The Endpoints Management module sends a check request to Service Control.\n3. If you configured your API to require an API key or authentication, Service Control checks to see if the request is permitted and sends a response back to the Endpoints Management module.\n4. If the request isn't permitted, the Endpoints Management module rejects the request. If the request is permitted, it is forwarded to Endpoints Frameworks. Either way, the Endpoints Management module logs information about the request.\n5. Endpoints Frameworks routes the request to your backend code.\n\nYou can use Endpoints Frameworks with or without API management\nfunctionality. Use of Endpoints Frameworks without API management\nfunctionality is offered at no charge. API management functionality is charged\naccording to the\n[Endpoints pricing page](/endpoints/pricing).\n\nEndpoints Frameworks is supported only for services running on the\nApp Engine standard environment. On Compute Engine,\nGKE, App Engine flexible environment, or other\nenvironments, your services must run behind ESP.\n\nIf the service is running behind ESP, you can write the backend\ncode in any language and framework, such as Python Flask, Java Jersey, or\nNode.js Express. In such environments, there is no need to use\nEndpoints Frameworks for API management.\n\nWhat's next\n-----------\n\n- For information on adding API management:\n\n - [Java: Adding API management](/endpoints/docs/frameworks/java/adding-api-management)\n - [Python: Adding API management](/endpoints/docs/frameworks/python/adding-api-management)\n- For information on removing API management:\n\n - [Java: Removing API management](/endpoints/docs/frameworks/java/remove-api-management)\n - [Python: Removing API management](/endpoints/docs/frameworks/python/remove-api-management)"]]