Microservices

Developing at the edge: Best practices for edge computing

Developing at the edge: Best practices for edge computing

Edge computing continues to gain force as ever more companies increase their investments in edge, even if they’re only dipping their toes in with small-scale pilot deployments. Emerging use cases like Internet-of-Things (IoT), augmented reality, and virtual reality (AR/VR), robotics, and telecommunications-network functions are often cited as key drivers for companies moving computing to the edge. Traditional enterprises are also looking at edge computing to better support their remote offices, retail locations, manufacturing plants, and more. At the network edge, service providers can deploy an entirely new class of services to take advantage of their proximity to customers.

Continue reading Developing at the edge: Best practices for edge computing

Share
Generate automated Grafana metrics dashboards for MicroProfile apps

Generate automated Grafana metrics dashboards for MicroProfile apps

Grafana is an awesome visualization tool for seeing real-time metrics from your applications, and you can combine it with MicroProfile and similar tools to create one dashboard for multiple projects. Different projects use different names for metrics, however, so it is often necessary (and tedious) to handcraft the metrics for each project. Moreover, each project can expose its own custom metrics, and each MicroProfile vendor can also produce custom metrics, so there are many manual steps involved if you want to see all of your metrics in one place.

What if you could simply examine a running app and generate a dashboard with all of its exposed metrics? That is exactly what you can do with the MicroProfile Metrics Generator, a new open source tool that I created to dynamically generate Grafana dashboards for any MicroProfile project by capturing and monitoring all of your project metrics. Once you’ve created a dashboard, you can use it with Grafana, customize it to suit specific needs, and save it as a JSON file. You can also periodically regenerate your dashboards to bring in new metrics that you’ve exposed in your application.

In this article, you will learn how to do just that: Use the MicroProfile Metrics Generator to create a unified dashboard for all of your project’s metrics.

Continue reading “Generate automated Grafana metrics dashboards for MicroProfile apps”

Share
Develop Eclipse MicroProfile applications on Red Hat JBoss Enterprise Application Platform Expansion Pack 1.0 with Red Hat CodeReady Workspaces

Develop Eclipse MicroProfile applications on Red Hat JBoss Enterprise Application Platform Expansion Pack 1.0 with Red Hat CodeReady Workspaces

This article builds on my previous tutorial, Enable Eclipse MicroProfile applications on Red Hat JBoss Enterprise Application Platform 7.3. To follow the examples, you must have Eclipse MicroProfile enabled in your Red Hat JBoss Enterprise Application Platform Expansion Pack (JBoss EAP XP) 1.0.0.GA installation, via Red Hat CodeReady Studio. See the previous article for installation instructions.

In this article, we will use the installed MicroProfile-enabled image to set up a JBoss EAP XP quickstart project in Red Hat CodeReady Workspaces (CRW). You can also apply what you learn from this article to develop your own applications using CodeReady Workspaces.

Note: For more examples, be sure to see the video demonstration at the end of the article.

Continue reading “Develop Eclipse MicroProfile applications on Red Hat JBoss Enterprise Application Platform Expansion Pack 1.0 with Red Hat CodeReady Workspaces”

Share
Red Hat JBoss Enterprise Application Platform expansion pack 1.0 released

Red Hat JBoss Enterprise Application Platform expansion pack 1.0 released

Red Hat recently released the first Red Hat JBoss Enterprise Application Platform expansion pack (JBoss EAP XP) version 1.0. This version enables JBoss EAP developers to build Java microservices using Eclipse MicroProfile 3.3 APIs while continuing to also support Jakarta EE 8. This article goes into detail on the nature of this new offering and an easy way to get started.

Continue reading Red Hat JBoss Enterprise Application Platform expansion pack 1.0 released

Share
Support for GraphQL with Open Liberty 20.0.0.6

Support for GraphQL with Open Liberty 20.0.0.6

The Open Liberty 20.0.0.6 release brings new features, updates, and bug fixes. This article introduces the new features in Open Liberty 20.0.0.6, including support for developing “code-first” GraphQL applications, provisioning features from a Maven repository, and using a server configuration to control application startup.

What’s new in Open Liberty 20.0.0.6

Open Liberty 20.0.0.6 includes the following feature updates, which I discuss in the next sections:

Note: Visit Open Liberty’s GitHub repository to learn about bug fixes in Open Liberty 20.0.0.6.

Continue reading “Support for GraphQL with Open Liberty 20.0.0.6”

Share
Enable Eclipse MicroProfile applications on Red Hat JBoss Enterprise Application Platform 7.3

Enable Eclipse MicroProfile applications on Red Hat JBoss Enterprise Application Platform 7.3

In this article, we show you how to install Red Hat JBoss Enterprise Application Platform (JBoss EAP) XP 1.0.0.GA and enable Eclipse MicroProfile support on JBoss EAP. Once you have MicroProfile support enabled, you can start using the quickstart examples or start developing your own application.

You can find a demo video at the end of this article.

Continue reading “Enable Eclipse MicroProfile applications on Red Hat JBoss Enterprise Application Platform 7.3”

Share
Adding keystores and truststores to microservices in Red Hat OpenShift

Adding keystores and truststores to microservices in Red Hat OpenShift

You might not need Secure Socket Layer (SSL)-based communication between microservices in the same cluster, but it’s often a requirement if you want to connect to a remote web service or message broker. In cases where you will expose a web service or other endpoints, you might also have to use a custom keystore in a microservice deployed on Red Hat OpenShift, so that external clients only connect with a specific truststore.

In this article, I show you how to configure a keystore and a truststore for a Java-based microservice built with Spring Boot. I used the Apache Camel and CXF libraries from Red Hat Fuse to develop the microservice. I used a source-to-image (S2I) deployment and tested the examples in Red Hat OpenShift 4.3.

Continue reading “Adding keystores and truststores to microservices in Red Hat OpenShift”

Share
Red Hat build of Eclipse Vert.x 3.9 brings Fluent API Query

Red Hat build of Eclipse Vert.x 3.9 brings Fluent API Query

Red Hat Runtimes provides a set of comprehensive frameworks, runtimes, and programming languages for developers, architects, and IT leaders with cloud-native application development needs. The latest update to Red Hat Runtimes has arrived with Red Hat’s build of Eclipse Vert.x version 3.9. Red Hat Runtimes provides application developers with a variety of application runtimes and lets them run on the Red Hat OpenShift Container Platform.

A fluent API is a common pattern throughout Vert.x, it lets multiple methods calls be chained together. For example:

request.response().putHeader("Content-Type", "text/plain").write("some text").end();

Chaining calls like this also allows you to write code that’s a bit less verbose.

With 3.9, you can now create prepared statements and collector queries with the inclusion of Query in the Fluent API. If you are familiar with JDBC, PreparedStatement lets you create and execute statements. Moreover, you can run multiple interactions, such as cursor or stream operations.

Continue reading “Red Hat build of Eclipse Vert.x 3.9 brings Fluent API Query”

Share
Extending Kafka connectivity with Apache Camel Kafka connectors

Extending Kafka connectivity with Apache Camel Kafka connectors

Apache Kafka is one of the most used pieces of software in modern application development because of its distributed nature, high throughput, and horizontal scalability. Every day more and more organizations are adopting Kafka as the central event bus for their event-driven architecture. As a result, more and more data flows through the cluster, making the connectivity requirements rise in priority for any backlog. For this reason, the Apache Camel community released the first iteration of Kafka Connect connectors for the purpose of easing the burden on development teams.

Continue reading “Extending Kafka connectivity with Apache Camel Kafka connectors”

Share