En anteriores entradas hemos podido ver qué era Anypoint Platform, centrándonos en las diferencias entre sus dos versiones: Kernel y Enterprise.
En esta entrada ahondaremos en las funcionalidades que nos brinda la plataforma de Anypoint para la versión Enterprise.
¿Qué es Anypoint Platform?
Anypoint platform es una solución Integration Platform-as-a-service (iPaaS), una solución para la conectividad gestionada por API. Estas APIs pueden ser desplegadas en cualquier entorno, ya sea sobre la propia nube de MuleSoft (CloudHub), en nubes públicas de terceros o sobre la propia infraestructura del cliente.
La plataforma de Anypoint destaca frente a otras soluciones iPaaS principalmente en dos aspectos:
1. API-Led Connectivity
La conectividad Api-Led es un principio de integración alejado del modelo tradicional de conectividad punto por punto. Esta metodología apuesta por el uso de APIs interconectadas y reutilizables, permitiendo así reducir tiempos de desarrollo, mantenimiento y escalabilidad en nuestra red de aplicaciones.
MuleSoft divide estas APIs en tres grupos:
- APIs de experiencia: Son APIs dedicadas a mostrar la información de forma que sea lo más fácilmente consumible por el destinatario (App móvil, App web, Salesforce Community Cloud…).
- APIs de proceso: Estas APIs son las encargadas de procesar los datos obtenidos de la capa de sistema y de adaptarlos según las necesidades del negocio. (API de pedidos del cliente).
- API de sistema: Se encargan de interconectar las APIs de proceso con cada una de las fuentes de datos (Salesforce, SAP, Gmail, Twilio…).
Al emplear esta separación de una API en varias APIs interconectadas y divididas en diferentes capas de funcionalidad, nos permite la reutilización de sus funcionalidades, la abstracción de procesos y una mayor eficiencia en el desarrollo y escalabilidad de estas.
2. Solución de 360º
Además de permitirnos el desarrollo de APIs, también nos permite realizar otras acciones dentro de su plataforma, de forma que abarquemos todas las necesidades a la hora de diseñar, crear, y utilizar una API. Estas funcionalizades son:
- Diseño, prototipado y test: Podemos generar especificaciones de nuestros servicios, indicando cuál es el funcionamiento esperado por este. Una vez finalizada su definición, nos permitirá realizar pruebas sobre esta especificación, de forma que podremos validar su integración con otros servicios antes incluso de comenzar a desarrollarlo.
- Desarrollo: Nos permite crear APIs de forma ágil, empleando elementos reutilizables mediante código o point & click, mediante su interfaz visual.
- Despliegue: Permite desplegar nuestra API diseñada, tanto en nuestra nube de CloudHub como on-premise.
- Gestión y monitorización: Podemos monitorizar en tiempo real nuestros servicios desplegados, pudiendo ver mediante gráficas, la actividad en cada uno de nuestros servicios o su uso de recursos. También nos permite personalizar alertas en caso de, por ejemplo, fallos de funcionamiento o alta demanda de recursos, entre otros.
- Seguridad: Nos permite gestionar la seguridad de nuestros servicios, permitiendo indicarle valores de autenticación, niveles de licencias, roles de acceso a los usuarios o límites de acceso a los servicios, entre otros.
Estas funcionalidades están divididas en diferentes componentes, los cuales forman la plataforma de Anypoint en su totalidad.
Componentes de Anypoint Platform
Como hemos comentado, Anypoint Platform, para permitirnos realizar soluciones de 360º, nos ofrece diferentes componentes, cada uno de ellos con una funcionalidad específica, a continuación veremos con detalle cada uno de ellos.
Exchange
Exchange es una tienda en la cual disponemos de diferentes conectores y plantillas, los cuales están disponibles para su uso en el desarrollo de APIs personalizadas. Además, nos permite alojar de manera privada los servicios de nuestra organización, por lo que también puede ser empleado como el catálogo de servicios de nuestra empresa.
La ventaja de tener estos conectores, plantillas y servicios dentro de un repositorio, es la de poder reutilizarlos en nuestros proyectos, reduciendo así tiempos de desarrollo.
Design Center
Se trata del componente donde podremos diseñar y crear nuestras APIs, este se divide en dos partes, dependiendo de si deseamos diseñar o crear una API, estas son:
API Designer
Esta herramienta permite diseñar nuestras APIs a partir de su especificación. Esta se escribe mediante un lenguaje denominado RAML, pero, aunque podemos escribir la especificación manualmente, también nos brinda la posibilidad de emplear un asistente visual para su desarrollo.
Una vez que se ha definido el funcionamiento de una API, podremos probar cada uno de sus métodos usando la consola que nos brinda la propia plataforma. También podemos publicarla en Exchange para poder realizar pruebas de integración de esta API en otros servicios, incluso antes de comenzar a desarrollarla.
Flow Designer
Esta herramienta nos permite crear nuestras propias APIs, dentro de ella, y mediante una interfaz visual de point & click, podremos ir enlazando procesos, llamadas y trasnformaciones con el fin de generar el funcionamiento deseado.
Dentro del Flow Designer podremos realizar llamadas a APIs generadas por nuestra compañía, llamadas a especificaciones de APIs publicadas en exchange, o hacer uso de plantillas y conectores con aplicativos desarrollados y publicados por MuleSoft.
Una vez finalizado su desarrollo, desde aquí podremos publicar una plantilla en exchange de forma privada para nuestra organización, con el fin de su reutilización, o desplegar el servicio para su uso.
Runtime Manager
Una vez desplegado un servicio desarrollado en el Flow Designer, este componente nos permite gestionar el entorno donde éste se ejecuta, ya sea en un Worker de CloudHub o en un entorno On-premise.
En el caso de desplegarse sobre el entorno de MuleSoft (CloudHub) nos permitirá especificar cuántos workers van a ejecutar el servicio e indicarle los recursos que éstos van a tener dedicados.
Al realizar el despliegue, la API será empaquetada en un fichero junto a todas sus dependencias, de forma que no sea necesaria configuración adicional en el despliegue.
Monitoring
Como su propio nombre indica, nos permite realizar una monitorización de la actividad en aquellos servicios que hayamos desplegado. A través de diversos paneles, podemos ver gráficas sobre el número de peticiones al servicio, tiempos de respuesta a cada uno de sus métodos, peticiones erróneas realizadas al servicio o recursos empleados a lo largo del tiempo por este.
Además, nos permite crear alertas personalizadas, de forma que, si se originara un comportamiento anormal, pudiéramos ser notificados al respecto.
Visualizer
Una vez desplegada nuestra red de aplicaciones, visualizer nos permite visualizar la interconexión entre cada una de ellas, pudiendo dividir cada una de estas aplicaciones en los tres niveles que conforman el API-led Connectivity, tal como hemos explicado anteriormente.
Esto nos permite, mediante un simple vistazo, visualizar cómo se interconectan las distintas aplicaciones dentro de nuestra organización, y detectar si alguna de ellas realiza conexiones fuera del estándar fijado.
API Manager
Es una herramienta que permite realizar la gestión sobre las API’s publicadas en Exchange.
Esta herramienta, entre otras funciones, nos permite:
- Configurar políticas de autenticación y seguridad.
- Configurar SLAs y alertas basadas en éstos.
- Creación y configuración de un API proxy para el acceso a nuestra API.
- Informes de actividad del uso de la API.
¿Quieres conocer más detalles?
En sumamoOs tenemos un equipo dispuesto a ayudarte a que comiences a aprovechar el potencial que pueden ofrecer a tu empresa las herramientas de integración que ofrece MuleSoft. De modo que, si quieres averiguar más detalles sobre algún servicio con los que se conecta, puedes echar un vistazo aquí o contactar con nosotros para conocer cómo transformar tu empresa empleando está creciente corriente tecnológica.