Extensible Service Proxy und Cloud Endpoints Frameworks im Vergleich
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Auf dieser Seite werden die Unterschiede zwischen Endpoints Frameworks für die App Engine-Standardumgebung und dem Extensible Service Proxy (ESP) erläutert, der in Cloud Endpoints für APIs verwendet wird, die OpenAPI oder gRPC verwenden.
Weitere Informationen zu den Endpoints-Optionen finden Sie unter Endpoints-Option auswählen.
Überblick
Cloud Endpoints ist ein API-Verwaltungssystem, mit dem Sie Ihre APIs mithilfe derselben Infrastruktur schützen, überwachen, analysieren und Kontingente für diese festlegen können, die Google für seine eigenen APIs verwendet. Die Funktionen für die API-Verwaltung umfassen unabhängig von der für die API-Implementierung verwendeten Technologie Authentifizierung, API-Schlüssel, Monitoring, Logging und Tracing. Sie werden über den Extensible Service Proxy oder mithilfe von Endpoints Frameworks bereitgestellt.
Extensible Service Proxy
Bei Endpoints for OpenAPI und gRPC werden API-Anfragen über den Extensible Service Proxy geleitet, der Schlüssel und Authentifizierungstokens validiert und Signale (Messwerte und Protokolle) über die Service Control API sendet. Durch die von ESP bereitgestellte Trennung können Sie den REST- oder gRPC-Back-End-Code in einer beliebigen Sprache schreiben und gRPC oder ein beliebiges Framework verwenden, das die API-Beschreibung mit OpenAPI unterstützt.
APIs, die OpenAPI verwenden: Das API-Back-End kann in der flexiblen App Engine-Umgebung, in Google Kubernetes Engine, Compute Engine, Kubernetes oder lokalen Bereitstellungen ausgeführt werden.
APIs, die gRPC verwenden: Das API-Back-End kann in GKE, Compute Engine, Kubernetes oder lokalen Bereitstellungen ausgeführt werden.
Eine Anfrage wird über den folgenden Pfad gesendet:
Eine eingehende Code-Anfrage wird an den ESP gesendet.
Der ESP sendet eine Prüfanfrage an die Service Control API.
Wenn Sie die API so konfiguriert haben, dass ein API-Schlüssel oder eine Authentifizierung erforderlich ist, überprüft die Service Control API, ob die Anfrage zulässig ist, und sendet eine Antwort an den ESP.
Wenn die Anfrage nicht zulässig ist, lehnt der ESP die Anfrage ab. Wenn die Anfrage zulässig ist, wird sie an Ihren Back-End-Code weitergeleitet. In beiden Fällen erfasst der ESP Informationen über die Anfrage.
Für API-Back-Ends, die in der App Engine-Standardumgebung ausgeführt werden, steht Endpoints Frameworks zur Verfügung, um Entwicklern einen schnellen Einstieg in eine API zu ermöglichen. Endpoints Frameworks ist ein Web-Framework und eine Alternative zu Python Flask oder Java Jersey.
Endpoints Frameworks wird in die Service Control API eingebunden. Ein Back-End, das Endpoints Frameworks verwendet, muss somit nicht hinter dem Extensible Service Proxy ausgeführt werden.
Wenn Sie die API-Verwaltung aktiviert haben, wird eine Anfrage über den folgenden Pfad gesendet:
Eine eingehende Codeanfrage wird an das Endpoints Management-Modul in Endpoints Frameworks gesendet.
Das Endpoints Management-Modul sendet eine Prüfanfrage an die Service Control API.
Wenn Sie die API so konfiguriert haben, dass ein API-Schlüssel oder eine Authentifizierung erforderlich ist, überprüft die Service Control API, ob die Anfrage zulässig ist, und sendet eine Antwort an das Endpoints Management-Modul.
Wenn die Anfrage nicht zulässig ist, wird sie vom Endpoints Management-Modul abgelehnt. Wenn die Anfrage zulässig ist, wird sie an Endpoints Frameworks weitergeleitet. In beiden Fällen erfasst das Endpoints Management-Modul Informationen über die Anfrage.
Endpoints Frameworks leitet die Anfrage an den Back-End-Code weiter.
Sie können Endpoints Frameworks mit oder ohne API-Verwaltungsfunktionen verwenden. Die Verwendung von Endpoints Frameworks ohne API-Verwaltungsfunktionen ist kostenlos. Die Gebühren für API-Verwaltungsfunktionen finden Sie auf der Seite mit den Endpoints-Preisen.
Endpoints Frameworks wird nur für Dienste unterstützt, die in der App Engine-Standardumgebung ausgeführt werden. In Compute Engine, GKE, der flexiblen App Engine-Umgebung und anderen Umgebungen müssen Dienste hinter dem ESP ausgeführt werden.
Wenn der Dienst hinter dem ESP ausgeführt wird, kann der Back-End-Code in einer beliebigen Sprache und einem beliebigen Framework geschrieben werden, z. B. Python Flask, Java Jersey oder Node.js Express. In diesen Umgebungen ist Endpoints Frameworks für die API-Verwaltung nicht erforderlich.
Weitere Informationen
Informationen zum Hinzufügen der API-Verwaltung finden Sie unter:
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Schwer verständlich","hardToUnderstand","thumb-down"],["Informationen oder Beispielcode falsch","incorrectInformationOrSampleCode","thumb-down"],["Benötigte Informationen/Beispiele nicht gefunden","missingTheInformationSamplesINeed","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 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)"]]