Microservices

Architecting messaging solutions with Apache ActiveMQ Artemis

Architecting messaging solutions with Apache ActiveMQ Artemis

As an architect in the Red Hat Consulting team, I’ve helped countless customers with their integration challenges over the last six years. Recently, I had a few consulting gigs around Red Hat AMQ 7 Broker (the enterprise version of Apache ActiveMQ Artemis), where the requirements and outcomes were similar. That similarity made me think that the whole requirement identification process and can be more structured and repeatable.

This guide is intended for sharing what I learned from these few gigs in an attempt to make the AMQ Broker architecting process, the resulting deployment topologies, and the expected effort more predictable—at least for the common use cases. As such, what follows will be useful for messaging and integration consultants and architects tasked with creating a messaging architecture for Apache Artemis, and other messaging solutions in general. This article focuses on Apache Artemis. It doesn’t cover Apache Kafka, Strimzi, Apache Qpid, EnMasse, or the EAP messaging system, which are all components of our Red Hat AMQ 7 product offering.

Continue reading “Architecting messaging solutions with Apache ActiveMQ Artemis”

Share
Skupper.io: Let your services communicate across Kubernetes clusters

Skupper.io: Let your services communicate across Kubernetes clusters

In the past few years, the popularity and adoption of containers has skyrocketed, and the Kubernetes container orchestration platform has been largely adopted as well. With these changes, a new set of challenges has emerged when dealing with applications deployed on Kubernetes clusters in the real world. One challenge is how to deal with communication between multiple clusters that might be in different networks (even private ones), behind firewalls, and so on.

One possible solution to this problem is to use a Virtual Application Network (VAN), which is sometimes referred to as a Layer 7 network. In a nutshell, a VAN is a logical network that is deployed at the application level and introduces a new layer of addressing for fine-grained application components with no constraints on the network topology. For a much more in-depth explanation, please read this excellent article.

So, what is Skupper? In the project’s own words:

Skupper is a layer seven service interconnect. It enables secure communication across Kubernetes clusters with no VPNs or special firewall rules.

Continue reading “Skupper.io: Let your services communicate across Kubernetes clusters”

Share
Move your APIs into the serverless era with Camel K and Knative

Move your APIs into the serverless era with Camel K and Knative

In the past few years, developers have addressed the challenge of evolving from monolith systems to microservices architecture. These days, we hear about the adoption of serverless systems.

Like many trends in software, there’s no one clear view of how to define serverless or how this approach offers added value for our software architecture. The perfect place to start with serverless systems and discover serverless capabilities is through a use case.

Continue reading “Move your APIs into the serverless era with Camel K and Knative”

Share
MicroProfile 3.2 is now available on Open Liberty in Red Hat Runtimes

MicroProfile 3.2 is now available on Open Liberty in Red Hat Runtimes

Open Liberty 19.0.0.12 provides support for MicroProfile 3.2, allowing users to provide their own health check procedures and monitor microservice applications easily with metrics. Additionally, updates allow trust to be established using the JDK’s default truststore or a certificate through an environment variable.

Continue reading MicroProfile 3.2 is now available on Open Liberty in Red Hat Runtimes

Share
New Eclipse MicroProfile book provides introduction to enterprise Java microservices

New Eclipse MicroProfile book provides introduction to enterprise Java microservices

Fellow Red Hat associates Cesar Saavedra, Pavol Loffay, Jeff Mesnil, Antoine Sabot-Durand, Scott Stark, and I have written a book on Eclipse MicroProfile, called Hands-On Enterprise Java Microservices with Eclipse MicroProfile

This 256-page book provides an introduction to microservices and why they are important, and it showcases Eclipse MicroProfile as a way to implement so-called 12-factor apps.

Now through December 15, you can use the following link and discount code to receive a 20% discount when purchasing this ebook through the Packt website.

Hands-On Enterprise Java Microservices with Eclipse MicroProfile

Discount code: eclipse20

Continue reading “New Eclipse MicroProfile book provides introduction to enterprise Java microservices”

Share
Decoupling microservices with Apache Camel and Debezium

Decoupling microservices with Apache Camel and Debezium

The rise of microservices-oriented architecture brought us new development paradigms and mantras about independent development and decoupling. In such a scenario, we have to deal with a situation where we aim for independence, but we still need to react to state changes in different enterprise domains.

I’ll use a simple and typical example in order to show what we’re talking about. Imagine the development of two independent microservices: Order and User. We designed them to expose a REST interface and to each use a separate database, as shown in Figure 1:

Diagram 1 - Order and User microservices

Figure 1: Order and User microservices.

Continue reading “Decoupling microservices with Apache Camel and Debezium”

Share
Open Liberty Java runtime now available to Red Hat Runtimes subscribers

Open Liberty Java runtime now available to Red Hat Runtimes subscribers

Open Liberty is a lightweight, production-ready Java runtime for containerizing and deploying microservices to the cloud, and is now available as part of a Red Hat Runtimes subscription. If you are a Red Hat Runtimes subscriber, you can write your Eclipse MicroProfile and Jakarta EE apps on Open Liberty and then run them in containers on Red Hat OpenShift, with commercial support from Red Hat and IBM.

Continue reading “Open Liberty Java runtime now available to Red Hat Runtimes subscribers”

Share
How to secure microservices with Red Hat Single Sign-On, Fuse, and 3scale

How to secure microservices with Red Hat Single Sign-On, Fuse, and 3scale

In this article, we’ll cover microservice security concepts by using protocols such as OpenID Connect with the support of Red Hat Single Sign-On and 3scale. Working with a microservice-based architecture, user identity, and access control in a distributed, in-depth form must be carefully designed. Here, the integration of these tools will be detailed, step-by-step, in a realistic view.

This article exemplifies the use of tools that can securely run your businesses, avoiding using homemade solutions, and protecting your services by using an API gateway, preventing your applications from being exposed to the public network. The use of an API gateway also provides additional access control, monetization, and analytics.

Continue reading “How to secure microservices with Red Hat Single Sign-On, Fuse, and 3scale”

Share
Using a MySQL database in your Red Hat OpenShift application

Using a MySQL database in your Red Hat OpenShift application

Creating a MySQL database in Red Hat OpenShift is useful for developers, there’s no doubt about that. But, once the database is ready, with tables and data, how do you use the data in your application? Is there some special magic when using Red Hat OpenShift? What about the fact that pod names can change? This article will walk you through the steps necessary to access a MySQL database that is running in your OpenShift cluster.

Continue reading “Using a MySQL database in your Red Hat OpenShift application”

Share