¿Qué es Apigee Edge?

Estás consultando la documentación de Apigee Edge.
Consulta la documentación de Apigee X.
Información

Apigee Edge es una plataforma para desarrollar y administrar APIs. Mediante el fronting de servicios con una capa de proxy, Edge proporciona una abstracción o fachada para las APIs de servicio de backend y proporciona seguridad, límite de frecuencia, cuotas, estadísticas y mucho más.

Por ejemplo, puedes ver una transmisión web sobre cómo Walgreens usa las APIs y Apigee Edge para proporcionar un ecosistema de apps enriquecido relacionado con la impresión de fotos, las recetas y otros servicios que ofrecen.

Compila tu primer proxy

Aceleración digital

En este video, se ofrece una vista rápida de cómo Apigee te ayuda a evolucionar en un negocio digital.

Elige entre la administración de servicios y la administración de API

Este video te ayuda a comprender las diferencias importantes entre la administración de servicios y la administración de API. empresa.

Haz que tus servicios estén disponibles en la Web

En la actualidad, las empresas desean que sus servicios de backend estén disponibles en la Web a fin de que las apps que se ejecutan en dispositivos móviles y computadoras de escritorio puedan consumir estos servicios. Es posible que una empresa desee exponer servicios que brindan información sobre precios y disponibilidad de productos, servicios de venta y pedido, servicios de seguimiento de pedidos y cualquier otro servicio que requieran las apps cliente.

A menudo, las empresas exponen los servicios como un conjunto de extremos HTTP. Luego, los desarrolladores de aplicaciones cliente realizan solicitudes HTTP a estos extremos. Según el extremo, el servicio puede mostrar datos con formato XML o JSON y volver a la app cliente.

Las apps cliente que consumen estos servicios pueden implementarse como apps independientes para un dispositivo móvil o una tablet, como apps HTML5 que se ejecutan en un navegador o como cualquier otro tipo de app que pueda realizar una solicitud a un extremo HTTP y consume cualquier dato de respuesta. Es posible que a estas apps la desarrollen y lancen la misma empresa que expuso los servicios, o por desarrolladores de app de terceros que usan servicios disponibles de forma pública.

En la siguiente imagen, se muestra este tipo de modelo:

Varios tipos de apps, como las apps para dispositivos móviles, las apps de punto de venta, los socios y las apps web, se conectan a los servicios de backend, como ESB, SOA, servidores de apps y bases de datos.

Debido a que los proveedores ponen sus servicios a través de la Web, deben asegurarse de tomar todas las medidas necesarias para asegurar y proteger sus servicios del acceso no autorizado. Como proveedor de servicios, considera lo siguiente:

  • Seguridad: ¿Cómo controlarás el acceso a los servicios para evitar el acceso no autorizado?
  • Compatibilidad: ¿Tus servicios funcionarán en diferentes plataformas y dispositivos?
  • Parámetros de medición: ¿Cómo puedes supervisar tus servicios para asegurarte de que estén disponibles?
  • Monetización: ¿Cómo puedes hacer un seguimiento de los clientes y facturar el acceso a tus servicios?
  • Y muchas otras consideraciones

Después de que se lanza una app cliente que accede a algún servicio, el proveedor de servicios debe asegurarse de que estos sigan funcionando a medida que agregan, modifican o borran esos servicios. El proveedor de servicios también debe tener una forma de mantener a los desarrolladores de apps atentos a los cambios en los servicios a fin de garantizar que las apps cliente permanezcan sincronizadas con esos servicios.

Los desarrolladores de apps cliente enfrentan desafíos cuando intentan consumir servicios de diferentes proveedores. En este momento, los proveedores de servicios pueden usar muchas tecnologías para exponer sus servicios. La misma app cliente podría tener que usar un mecanismo a fin de consumir un servicio de un proveedor y un mecanismo diferente para consumir un servicio de otro proveedor. Incluso los desarrolladores de apps pueden enfrentar la situación en la que deben usar mecanismos diferentes para consumir servicios del mismo proveedor.

Haz que los servicios estén disponibles a través de Apigee Edge

Apigee Edge te permite proporcionar acceso seguro a tus servicios con una API bien definida que es coherente en todos tus servicios, sin importar la implementación de estos. Una API coherente:

  • Facilita a los desarrolladores de apps el consumo de tus servicios.
  • Te permite cambiar la implementación del servicio de backend sin afectar la API pública.
  • Te permite aprovechar las estadísticas, la monetización, el portal para desarrolladores y otras funciones integradas en Edge.

En la siguiente imagen, se muestra una arquitectura en la que Edge controla las solicitudes de las apps cliente a tus servicios de backend:

Apigee Edge se conecta entre las aplicaciones de los clientes y los servicios de backend.

En lugar de que los desarrolladores de apps consuman tus servicios directamente, acceden a un proxy de API creado en Edge. El proxy de API funciona como un mapeo de un extremo HTTP disponible de forma pública a tu servicio de backend. Cuando creas un proxy de API, permites que Edge se encargue de las tareas de seguridad y autorización necesarias para proteger tus servicios, además de analizar, supervisar y monetizar esos servicios.

Debido a que los desarrolladores de apps realizan solicitudes HTTP a un proxy de API, en lugar de directamente a tus servicios, los desarrolladores no necesitan saber sobre la implementación de tus servicios. Todo lo que el desarrollador debe saber es lo siguiente:

  • La URL del extremo del proxy de API
  • Cualquier parámetro de consulta, encabezados o parámetro de cuerpo pasados en una solicitud.
  • Cualquier credencial de autenticación y autorización requerida.
  • El formato de la respuesta, incluido el formato de datos de la respuesta, como XML o JSON.

El proxy de API aísla al desarrollador de aplicaciones de su servicio de backend. Por lo tanto, puedes cambiar la implementación del servicio siempre que la API pública siga siendo coherente. Si mantienes una API de frontend coherente, las apps cliente existentes continuarán funcionando sin importar los cambios en el backend.

Puedes usar políticas en el proxy de API para agregar funcionalidad a un servicio sin tener que realizar cambios en el servicio de backend. Por ejemplo, puedes agregar políticas a tu proxy para realizar transformaciones y filtros de datos, agregar seguridad, ejecutar la lógica condicional o código personalizado y realizar muchas otras acciones. Es importante recordar que implementas políticas en Edge, no en tu servidor de backend.

Para obtener más información, consulta Información sobre las API y los proxies de API.

Crear un producto de API

Un proxy de API es el extremo HTTP en Apigee Edge que usan los desarrolladores para acceder a tus servicios de backend. Si bien es posible, no sueles poner los proxies de API individuales disponibles. En su lugar, se agrupan uno o más proxies de API en un producto de API.

Un producto de API es un conjunto de proxies de API combinados con un plan de servicio. Ese plan de servicio puede configurar límites de acceso en los proxies de API, proporcionar seguridad, permitir supervisión y estadísticas, y proporcionar características adicionales. Los productos de API también son el mecanismo central que Edge usa para la autorización y el control de acceso a tus APIs.

Tienes una gran flexibilidad cuando creas productos de API. Por ejemplo, varios productos de API pueden compartir el mismo proxy de API. En la siguiente figura, se muestran tres productos de API. Ten en cuenta que todos los productos permiten el acceso al proxy de API 3, pero solo el producto A permite el acceso al proxy de API 1.

El producto A accede al proxy 1 y 3. El producto B accede al proxy 3.
    El producto C accede al proxy 2, 3 y 4.

Puedes establecer diferentes propiedades en cada producto de API. Por ejemplo, puedes poner a disposición un producto de API con un límite de acceso bajo, como 1,000 solicitudes por día, para un precio de oferta. Luego, lanzas otro producto de API que proporciona acceso al mismo proxy de API, pero con un límite de acceso mucho mayor, por un precio más alto. También puedes crear un producto de API gratuito que permita acceso de solo lectura a tus servicios y, luego, vender un producto de API a los mismos proxies de API que permiten acceso de lectura y escritura.

Para obtener más información, consulta Administra productos de API.

Permite que una app del cliente acceda a tu producto de API

Cuando los desarrolladores de apps deciden que desean acceder a tus servicios, primero deben registrar la app cliente con el producto de API.

Una app cliente necesita una clave para llamar a una API asociada con un producto de API.

Después del registro, un desarrollador de apps recibe una clave de API que debe incluir en cada solicitud a un proxy de API incluido en el producto de API. Esa clave está autenticada y, si la autenticación se realiza de forma correcta, la solicitud puede acceder al servicio de backend.

En cualquier momento, puedes revocar la clave para que la app cliente ya no tenga acceso a tus servicios. O bien, puedes definir un límite de tiempo en una clave para que el desarrollador deba actualizarla después de un período específico.

Debes decidir cómo controlar las solicitudes de registro de los desarrolladores para acceder a tus productos de API. Con los servicios para desarrolladores de Apigee Edge, puedes automatizar el proceso de registro o usar un proceso manual para controlar el acceso.

Crea productos de API y haz que estén disponibles para los desarrolladores

  1. Crea uno o más proxies de API que asignen URL públicas a tus servicios de backend.
  2. Crea un producto de API que agrupe tus proxies de API.
  3. Implementa tus proxies de API y tu producto de API.
  4. Informa a tus desarrolladores que el producto de API está disponible.

Una vez que los programadores de aplicaciones conocen la disponibilidad de tu producto de API, hacen lo siguiente:

  1. Registran las apps clientes con tu producto de API.
  2. Reciben una clave de API para el producto de API.
  3. Realizan solicitudes a tus servicios mediante proxies de API (que se incluyen en el producto de API) y pasa la clave de API con cada solicitud.

Componentes de Apigee Edge

Apigee Edge consta del entorno de ejecución, la supervisión y las estadísticas de APIs, y los servicios para desarrolladores que, en conjunto, proporcionan una infraestructura integral para la creación, la seguridad, la administración y las operaciones de las APIs.

En la siguiente figura, se muestran los servicios perimetrales:

Los desarrolladores acceden al ecosistema de desarrolladores, que incluye SmartDocs, el portal personalizable, la administración de claves de autoservicio y los SDK. Las apps y los servicios acceden al
 entorno de ejecución de la API, que incluye puertas de enlace, conectores, código personalizado, seguridad y
 APIs de administración. Los ingenieros de operaciones acceden a la supervisión y las estadísticas, que incluyen
    informes empresariales, supervisión de rendimiento, informes personalizados y seguimiento.

Entorno de ejecución de la API de Edge

Los servicios de API de Apigee Edge se basan en crear y consumir APIs, ya sea que crees proxies de APIs como un proveedor de servicios o uses APIs, SDKs y otros servicios de conveniencia como desarrollador de apps.

El servidor de administración de API proporciona herramientas para agregar y configurar los proxies de API, configurar productos de API y administrar desarrolladores de apps y apps cliente. Descarga muchos problemas comunes de administración de tus servicios de backend. Cuando agregas un proxy de API, puedes aplicar políticas al proxy de API para agregar seguridad, límite de frecuencia, mediación, almacenamiento en caché, etcétera. También puedes personalizar el comportamiento de tu proxy de API mediante la aplicación de secuencias de comandos personalizadas, la realización de llamadas a API y servicios de terceros, etcétera. Consulta Información sobre las APIs y los proxies de API para obtener más información.

Si eres desarrollador de Node.js, puedes agregar fácilmente tus módulos de Node.js a Edge para crear APIs y mashups de API, y, al mismo tiempo, aprovechar los beneficios que proporciona Edge, desde la transformación de mensajes hasta la seguridad y las estadísticas.

Supervisión y estadísticas de Edge

Las estadísticas de la API de Apigee Edge proporcionan herramientas potentes para ver las tendencias de uso a corto y largo plazo de tus APIs. Puedes segmentar a tu público por desarrolladores y apps principales, comprender el uso por método de API para saber dónde invertir y crear informes personalizados sobre la información operativa o empresarial.

A medida que los datos pasan por Edge, se recopilan varios tipos predeterminados de información, como la URL, la IP, el ID del usuario de la información de llamadas a la API, la latencia, los datos de errores, etcétera. Puedes crear políticas para agregar información adicional, como encabezados, parámetros de búsqueda y partes de una solicitud o respuesta extraídas de archivos XML o JSON. Esta información se recopila de forma asíncrona del flujo de solicitudes y respuestas real y, por lo tanto, no afecta el rendimiento de la API.

La IU de administración te permite ver varias métricas y dimensiones en un navegador, como se muestra en la siguiente figura:

Un panel de estadísticas que muestra la cantidad de errores de políticas en forma de gráfico y tabular.

Sin embargo, también puedes acceder y controlar el servicio de Analytics mediante una interfaz de línea de comandos o mediante las API de RESTful. Consulta Descripción general de las estadísticas de API para obtener más información.

Ecosistema de desarrolladores perimetrales

Apigee Edge proporciona servicios para desarrolladores que te permiten realizar las siguientes acciones:

  • Administra la comunidad de desarrolladores de apps que usan tus servicios.
  • Trabaja con desarrolladores internos y externos, y formaliza las relaciones con modelos financieros.
  • Integrar desarrolladores y crear un portal para ellos. Los desarrolladores de apps se conectan a tu portal para acceder a la documentación de la API y, así, obtener más información sobre los productos de API disponibles públicamente y administrar las claves de API.

Cada cliente de Edge puede crear su propio portal para desarrolladores, ya sea en la nube o de forma local con Apigee Edge para la nube privada.

Apigee Edge te permite crear dos tipos de portales:

Monetización

Las capacidades de monetización proporcionan la infraestructura y las relaciones financieras necesarias a fin de convertir a tu comunidad de desarrolladores en un canal real para tus activos digitales. Con la monetización, puedes crear diversos planes de tarifas que les cobran a los desarrolladores por el uso de tus productos de API o que te permiten pagarles en situaciones de reparto de ingresos.

Los planes incluyen planes prepagados, pospagos, planes de tarifas fijas, planes de tarifas variables, planes “freemium”, planes personalizados para desarrolladores específicos, planes que cubren grupos de desarrolladores y mucho más. Además, la monetización incluye instalaciones de informes y facturación.

Para obtener más información, consulta Descripción general de la monetización.

Sabores de Edge

Apigee Edge tiene las siguientes variantes:

  • Nube pública: Es una versión alojada de SAAS en la que Apigee mantiene el entorno, lo que te permite concentrarte en compilar tus servicios y definir las API para esos servicios.
  • Nube privada: Es una instalación local en la que controlas el entorno de hardware y eres responsable de la instalación, la actualización, el mantenimiento y otros procesos administrativos.

Si te interesa nuestra versión de Apigee Hybrid, consulta los siguientes temas de Apigee X:

En cuanto a la funcionalidad, las versiones de nube pública y nube privada son muy similares. Sin embargo, la versión de la nube privada no es compatible con todas las funciones de esta versión. Entre las funciones que no son compatibles con la nube privada, se incluyen las siguientes:

  • Destinos alojados
  • Extensiones
  • Portales para desarrolladores integrados (Nota: Se admiten los portales para desarrolladores basados en Drupal)
  • Supervisión de API
  • Sense

Para ver una lista de las diferencias entre las variantes, consulta Compara productos de Apigee.

También existen pequeñas diferencias entre las APIs, como se describe en Diferencias entre la API de Edge para la nube pública y la API de Private Cloud.

La nube pública admite cuentas gratuitas y pagadas. La nube privada requiere cuentas pagadas.

Para admitir por completo las instalaciones locales, la versión de nube privada incluye componentes como el servidor de administración de Apigee, una base de datos NoSQL de Apache Cassandra, un servidor OpenLDAP, un router de mensajes y un procesador de mensajes.