Friday, August 24, 2018

Build with Mule - 101



Context

In Design with Mule - 101, we understood that mule runtime addressed integration
challenges by creating components, filters and flow as a medium passing payload from Station A to Station B. Application Developers, primarily adept at Spring frameworks, used mule ESB & even extended to create custom enterprise service bus implementations. I, being an Integration Developer & not core Java Developer had relied on Java EE 6 implementations & SOA enablement tools from Oracle Weblogic ecosystem, and there are others like me from IBM Webspehere ecosystem.

It is quite important to differentiate Application Integration from System Integration, but either ways, it would be really beneficial to learn underlying principles of Spring framework like Dependency Injection, cross cutting concerns and how packaging of spring modules are defining next generation Microservices architectures.

Mulesoft Anypoint Platform offering has approached on-premise & cloud deployments by revamping the runtime from 3.7 onwards, CloudHub as an Integration Platform that supports hybrid deployments along with providing developers & architects the Anypoint Studio IDE & ever growing cloud connectors.



Runtimes

Mule runtimes are broadly classified as 3.x & 4.x, and with salesforce acquisition of mulesoft, we, as integration consultants, should start treating flows as lego building blocks of SAAS ecosystem, along with components of heterogeneous microservices enabling digital transformation implementations.

At a basic level, I think Mule 4.x has simplified the message model, along with Dataweave as a scripting & transformation engine to standardize the mappings & enable tasks like validation, enrichment as message transition through different stages from source to destination.

Some complex patterns have also been introduced like streaming, improved error handling & reconnection strategies to support the cloud deployments and SAAS ecosystem.



Anypoint Platform Tools

Anypoint Exchange can be deployed as a central enterprise repository to discover, share and incorporate assets.

Design Center helps teams to discuss various aspects of an API by creating a RAML specification through a Web UI and simulating the user stories with data without concrete underlying implementations.

Anypoint Studio provides a development environment for creating concrete implementation of Integration specs using inbuilt capabilities of components, filters, transformers, connectors of mule runtime.

Anypoint Monitoring takes the agent installation to next level by providing capabilities beyond collecting data and allows Ops teams to monitor logs, create alerts and dashboards.

API Functional Monitoring allows white box testing, black box testing and runtime monitoring capabilities by importing the BAT testing framework defined using DWL language.

Anypoint Secret Manager uses Object Stores to provide an offering to manage keys, certificates in the cloud and enable robust security implementations like SSL, VPC for CloudHub APIs.

Anypoint Visualizer is a graphical tool that helps you define the APIs, Mule flows and other data generating systems as nodes in the Application Network and provide troubleshooting capabilities along the paths in story execution.

API Manager is a runtime that manages an API and governs the API lifecycle across different versions, provide capabilities like managing SLA tiers, OAuth Authorization scheme by applying various policies.

Runtime Manager is used to manage deployments of mule app from a single UI to both cloudhub and on-premise installations.

Anypoint Runtime Fabric streamlines the deployment of mule runtimes and other artifacts to IAAS cloud providers by leveraging the container technologies like Docker & Kubernetes.

Anypoint Access Management enables multi-tenet approach to authentication & authorization by using Orgs, Users, Roles & Environments similar to SAAS applications.

Anypoint MQ is a multi-tenet cloud messaging service that allows designers to leverage integrated persistence layer in anypoint ecosystem when implementing asynchronous patterns.

No comments:

Post a Comment