The NEW API Pattern

Distributed Architectures are a lot like neural networks; all services that talk to each other need to share the I/O in and in a way that they can synchronize that information on the fly. The way the brain does is that each neuron that communicates with another has the other neuron fire back a neurotransmitter to synchronize and improve that communication in the future thus creating a pattern.

While this behavior is almost identical to what is known as a webhook in the API world, we do not follow the same principles for API design in distributed architectures. Since the API Pattern designed in the 1970’s for centralized architectures and NOT distributed architectures, it was never intended to be used in this way and creates an architectural cross-cutting concern when used in distributed services.

Continue reading “The NEW API Pattern”

Share

Fuse development environment with Development Suite installer

Red Hat JBoss Fuse is an open source, lightweight and modular integration platform that allows you to connect services and systems across your entire application portfolio. If you’re familiar with Fuse, you’re probably familiar with the Fuse Tooling that comes with Red Hat JBoss Developer Studio.

Continue reading “Fuse development environment with Development Suite installer”

Share

JBoss A-MQ on OpenShift Cheat Sheet

We hear about Microservices a lot nowadays. Its implementation requires us to deal with new challenges. A key question that comes with using microservices is how to handle interactions in an asynchronous way. The answer to that is messaging.

Among other things, messaging features the following:

  • Loose coupling since it decouples client from services.
  • Improved availability since the message broker buffers messages until the consumer is able to process them.
  • Supports a variety of communication patterns including request/reply, notifications, request/async response, publish/subscribe, publish/async response and more.

One of the most famous products in messaging is JBoss A-MQ. Among the questions I receive from customers is whether it’s possible to run Red Hat JBoss A-MQ on Red Hat OpenShift. The answer is yes, Red Hat JBoss A-MQ (A-MQ) is available as a containerized image that is designed for use with OpenShift. It allows developers to quickly deploy an A-MQ message broker in a hybrid cloud environment.

The configuration of the broker can be performed two ways:

Before we proceed with how to deploy A-MQ on OpenShift, let’s take a look at different A-MQ architectures in high availability environment.

Continue reading “JBoss A-MQ on OpenShift Cheat Sheet”

Share

Using Falcon to cleanup Satellite host records that belong to terminated OSP instances

Overview

In an environment where OpenStack instances are automatically subscribed to Satellite, it is important that Satellite is notified of terminated instances so that is can safely delete its host record. Not doing so will:

  • Exhaust the available subscriptions, leading to unsubscribed hosts not being able to apply updates and security errata.
  • In the event that an emergency security errata needs to be deployed across the organization, Satellite administrators would be unable to determine if a host was either off or terminated, leading to uncertainty with their security posture.

In smaller environments, where one team is responsible for both OSP and Satellite, it’s possible to have one system administrator do this by using their administrator level access across both systems to determine which host records can be safely deleted in Satellite when the corresponding instance no longer exists.

Continue reading “Using Falcon to cleanup Satellite host records that belong to terminated OSP instances”

Share

Using Agile Integration for IoT

In architecting end-to-end Internet of Things (IoT) solutions, one of the biggest challenges is how to integrate IoT data with data streams from enterprise systems and external sources. Traditionally, businesses have used an enterprise service bus (ESB) and service-oriented architecture (SOA) to integrate and connect different systems and applications. However, this integration approach, due to its complexity and time-consuming implementation cycle, is not suitable for the rapidly moving needs of digital business imperatives like IoT. Given IoT’s adaptive nature, agile integration should be considered.

Continue reading “Using Agile Integration for IoT”

Share

Getting Started with Global Beans in Fuse Tooling 10.0.0

Red Hat JBoss Fuse provides an open source, lightweight, modular platform that enables you to connect a variety of services and systems across your application environment. And, included with Red Hat JBoss Developer Studio, is the Fuse Tooling that helps you take advantage of that platform.

The route editor initially focused on the parts of the Camel configuration inside the route or Camel context element, but in version 8.0.0, we began adding support for global elements such as data formats and endpoints on the Configurations tab. With the 10.0 release, we add support for beans that are outside the route.

Continue reading “Getting Started with Global Beans in Fuse Tooling 10.0.0”

Share