Mejorar el tiempo de respuesta de la pasarela aprovechando Cloud CDN
Usar un NEG sin servidor para API Gateway
Un grupo de puntos finales de red (NEG) especifica un grupo de endpoints de backend para un balanceador de carga. Un NEG sin servidor es un backend que apunta a un backend sin servidor alojado en Google, como Cloud Run, App Engine o API Gateway.
Un backend de NEG sin servidor para API Gateway puede representar lo siguiente:
Una instancia de API Gateway
Un grupo de pasarelas configuradas con la misma configuración de API
En la siguiente figura se muestra cómo se pueden usar los NEGs sin servidor en el modelo de Cloud Load Balancing:
Como se ha ilustrado en un ejemplo anterior, un servicio backend puede gestionarse mediante varios NEG sin servidor. Cada NEG sin servidor puede contener una sola instancia de API Gateway o usar una máscara de URL para dirigir a varias pasarelas. Como todos los NEGs que actúan como un servicio de backend se usan para el balanceo de carga, deben representar implementaciones de pasarela funcionalmente equivalentes. Por ejemplo, todas las NEGs deben tener la misma configuración de API desplegada en cada pasarela de diferentes regiones. Si un servicio de backend contiene varios NEGs, el balanceador de carga equilibrará el tráfico entre ellos y minimizará la latencia de las solicitudes.
Limitaciones de los NEGs sin servidor y API Gateway
Debes tener en cuenta algunas limitaciones al usar NEGs sin servidor para integrar Cloud Load Balancing en API Gateway. En particular:
Los NEG sin servidor no pueden tener ningún endpoint de red asociado, como direcciones IP o puertos.
Los NEGs sin servidor solo pueden apuntar a instancias de API Gateway que residan en la misma región en la que se crea el NEG.
Los NEGs sin servidor solo pueden apuntar a instancias de API Gateway creadas en el mismo proyecto que el balanceador de carga que usa el backend del NEG sin servidor.
API Gateway no admite la configuración de control de entrada. Por lo tanto, no hay forma de inhabilitar el acceso a tu API Gateway mediante una URL de gateway generada por el servicio y asegurarte de que el balanceador de carga gestione todo el tráfico.
Para obtener más información sobre las restricciones relativas a los NEGs sin servidor y los servicios backend en general, consulta Limitaciones.
Limitaciones de los NEGs sin servidor en las configuraciones de servicios de backend
Un servicio de backend define cómo distribuye el tráfico Cloud Load Balancing. La configuración del servicio de backend contiene un conjunto de valores, como el protocolo usado para conectarse a los backends, varios ajustes de distribución y de sesión, comprobaciones de estado y tiempos de espera. En el caso de las NEGs sin servidor que se usan como servicio de backend de API Gateway, estos ajustes proporcionan un control pormenorizado sobre el comportamiento del balanceador de carga.
La definición de recursos de un servicio de backend tiene las siguientes implicaciones para el diseño del balanceo de carga:
Los NEG sin servidor no se pueden usar con otros tipos de NEG en el mismo servicio de backend. Por ejemplo, no puedes enrutar a un clúster de GKE y a una instancia de API Gateway desde el mismo servicio de backend.
Todos los NEGs sin servidor combinados en un servicio de backend deben usar el mismo tipo de backend. Esto significa que los NEGs sin servidor de API Gateway solo se pueden combinar con otros NEGs sin servidor de API Gateway, y los NEGs sin servidor de App Engine solo se pueden combinar con otros NEGs sin servidor de App Engine.
Un servicio de backend solo puede contener un NEG sin servidor por región.
Cuando se define una configuración de servicio de backend que se dirige a un NEG sin servidor, se aplican las siguientes limitaciones de campo:
No se puede especificar balancingMode
El campo healthCheck debe estar vacío y no se puede especificar.
No se pueden especificar puertos
Solo se admiten los protocolos HTTP y HTTPS.
No se admiten los valores especificados en los campos relacionados con utilization o connection.
Los campos IAP, cdnPolicy y securityPolicy de la configuración del servicio de backend son válidos para los NEGs sin servidor. Estos campos se pueden usar para configurar Identity-Aware Proxy, Cloud CDN y Cloud Armor respectivamente con tu servicio API Gateway.
[[["Es fácil de entender","easyToUnderstand","thumb-up"],["Me ofreció una solución al problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Es difícil de entender","hardToUnderstand","thumb-down"],["La información o el código de muestra no son correctos","incorrectInformationOrSampleCode","thumb-down"],["Me faltan las muestras o la información que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-08-19 (UTC)."],[[["\u003cp\u003eAPI Gateway can integrate with Global external Application Load Balancer or Classic Application Load Balancer through serverless Network Endpoint Groups (NEGs) to leverage Cloud Load Balancing features.\u003c/p\u003e\n"],["\u003cp\u003eServerless NEGs for API Gateway can represent either a single API Gateway instance or a group of gateways sharing the same API configuration, enabling load balancing between functionally equivalent deployments.\u003c/p\u003e\n"],["\u003cp\u003eThere are several limitations to serverless NEGs for API Gateway, including restrictions on network endpoints, regional scope, and project constraints, along with an inability to disable direct access to API Gateways.\u003c/p\u003e\n"],["\u003cp\u003eBackend services that use serverless NEGs have specific configuration limitations, such as not being able to mix different types of NEGs, and restrictions on \u003ccode\u003ebalancingMode\u003c/code\u003e, \u003ccode\u003ehealthCheck\u003c/code\u003e, ports, protocols, \u003ccode\u003eutilization\u003c/code\u003e, or \u003ccode\u003econnection\u003c/code\u003e-related field settings.\u003c/p\u003e\n"],["\u003cp\u003eDespite the limitations, backend service configurations allow for the integration of Identity-Aware Proxy, Cloud CDN, and Cloud Armor with API Gateway through serverless NEGs.\u003c/p\u003e\n"]]],[],null,["# Load balancing for API Gateway\n==============================\n\n|\n| **Preview**\n|\n|\n| This product or feature is subject to the \"Pre-GA Offerings Terms\" in the General Service Terms section\n| of the [Service Specific Terms](/terms/service-terms#1).\n|\n| Pre-GA products and features are available \"as is\" and might have limited support.\n|\n| For more information, see the\n| [launch stage descriptions](/products#product-launch-stages).\n\nThe integration of [Global external Application Load Balancer](/load-balancing/docs/https) and [Classic Application Load Balancer](/load-balancing/docs/https) support for API Gateway enables your serverless backends to take advantage of all the features provided by Cloud Load Balancing. By combining API Gateway with a global external Application Load Balancer or classic Application Load Balancer using a [serverless Network Endpoint Group (serverless NEG)](/load-balancing/docs/negs), you can:\n\n- Host gateways with custom branded domains\n- Configure TLS for gateways using certificates issued by a preferred certificate authority\n- Create a common entry point for a gateway routing to multiple backends\n- Deploy gateways in multiple geographic regions for high availability without managing URLs for each region\n- Protect gateways with [Cloud Armor](/armor/docs)\n- Improve gateway response time by leveraging [Cloud CDN](/cdn/docs)\n\nUsing a serverless NEG for API Gateway\n--------------------------------------\n\nA [network endpoint group (NEG)](/load-balancing/docs/negs) specifies a group of backend endpoints for a load balancer. A *serverless NEG* is a backend that points to a Google-hosted serverless backend like [Cloud Run](/run/docs), [App Engine](/appengine/docs), or API Gateway.\nA serverless NEG backend for API Gateway can represent:\n\n- An API Gateway instance\n- A group of gateways configured with the same API config\n\nThe following figure shows how serverless NEGs can be used in the Cloud Load Balancing model:\n\nAs illustrated in an earlier example, a backend service can be managed by several serverless NEGs. Each serverless NEG can contain a single API Gateway instance or use a [URL mask](/load-balancing/docs/negs/serverless-neg-concepts#url_masks) to point to multiple gateways. Because all NEGs acting as a backend service are used for load balancing, they should represent functionally equivalent gateway deployments. For example, all NEGs should have the same API config deployed to each gateway in different regions. If a backend service contains several NEGs, the load balancer will balance traffic between these NEGs while minimizing request latency.\n\nLimitations on serverless NEGs and API Gateway\n----------------------------------------------\n\nA few limitations should be considered when using serverless NEGs to integrate Cloud Load Balancing for API Gateway. Most notably:\n\n- Serverless NEGs cannot have any [Network Endpoints](/compute/docs/reference/rest/v1/networkEndpointGroups/attachNetworkEndpoints), such as IP addresses or ports, attached.\n- Serverless NEGs can only point to API Gateway instances residing in the same region where the NEG is created.\n- Serverless NEGs can only point to API Gateway instances created in the same project as the load balancer using the Serverless NEG backend.\n- API Gateway doesn't support Ingress control settings. As a result, there is no way to disable access to your API Gateway using a service-generated gateway URL and ensure that all traffic is handled by the load balancer.\n\nFor more information on restrictions pertaining to serverless NEGs and backend services generally, see [Limitations](/load-balancing/docs/negs/serverless-neg-concepts#limitations).\n\nLimitations on serverless NEGs in backend service configurations\n----------------------------------------------------------------\n\nA [backend service](/compute/docs/reference/rest/v1/backendServices) defines how Cloud Load Balancing distributes traffic. The backend service configuration contains a set of values, such as the protocol used to connect to backends, various distribution and session settings, health checks, and timeouts. For serverless NEGs used as a backend service for API Gateway, these settings provide fine-grained control over how your load balancer behaves.\n\nThe resource definition of a backend service has the following implications for your load balancing design:\n\n- Serverless NEGs cannot be used with other types of NEGs in the same backend service. For example, you cannot route to a GKE cluster and an API Gateway instance from the same backend service.\n- All serverless NEGs combined in a backend service must use the same type of backend. This means API Gateway serverless NEGs can only be combined with other API Gateway serverless NEGs, App Engine serverless NEGs can only be combined with App Engine serverless NEGs.\n- A backend service may only contain one Serverless NEG per region.\n\nWhen defining a backend service configuration that routes to a serverless NEG, the following field limitations apply:\n\n- The `balancingMode` cannot be specified\n- The `healthCheck` field must be empty and cannot be specified\n- Ports cannot be specified\n- Only HTTP and HTTPS protocols are supported.\n- Values specified in `utilization` or `connection`-related fields are not supported.\n\nThe `IAP`, `cdnPolicy`, and `securityPolicy` fields in the backend service configuration are valid for serverless NEGs. These fields can be used to set up [Identity-Aware Proxy](/iap/docs), [Cloud CDN](/cdn/docs), and [Cloud Armor](/armor/docs) respectively with your API Gateway service.\n\nWhat's next?\n------------\n\n- Configure a load balancer with [Getting started with global external Application Load Balancer for API Gateway](/api-gateway/docs/gateway-serverless-neg)\n\n- Walk through [Creating multi-region deployments](/api-gateway/docs/multi-region-deployment) for API Gateway\n\n- Learn more about [Using custom domains](/api-gateway/docs/using-custom-domains)"]]