Autowire MicroProfile into Spring with Quarkus

Autowire MicroProfile into Spring with Quarkus

Eclipse MicroProfile and Spring Boot are often thought of as separate and distinct APIs when developing Java microservices. Developers default to their mental muscle memory by leveraging the APIs that they use on a daily basis. Learning new frameworks and runtimes can be a significant time investment. This article aims to ease the introduction to some popular MicroProfile APIs for Spring developers by enabling them to utilize the Spring APIs they already know while benefiting from significant new capabilities offered by Quarkus.

More specifically, this article covers the scope and details of the Spring APIs supported by Quarkus so Spring developers have a grasp of the foundation they can build on with MicroProfile APIs. The article then covers MicroProfile APIs that Spring developers will find helpful in the development of microservices. Only a subset of MicroProfile is covered.

Continue reading “Autowire MicroProfile into Spring with Quarkus”

Share
Introduction to microservices observability with Eclipse MicroProfile

Introduction to microservices observability with Eclipse MicroProfile

Microservices provide a modern approach to development, which is compliant with the cloud environment and gives us the ability to create cloud-native applications. With microservices, we promote resilience, fault tolerance, and scale; however, a microservice approach also presents different challenges than monolithic applications because of its distributed nature.

One of these challenges involves monitoring and logging, which naturally brings us to the concept of observability. In this article, we’ll look at how Eclipse MicroProfile can help you implement observability in microservices.

Continue reading “Introduction to microservices observability with Eclipse MicroProfile”

Share
Sending a telegram with Apache Camel K and Visual Studio Code

Sending a telegram with Apache Camel K and Visual Studio Code

When I was introduced to Apache Camel K a few months ago, I was amazed at how quickly developers could write and deploy an Apache Camel-based integration on Kubernetes. We immediately started work on creating Microsoft Visual Studio (VS) Code-based tools to make things even easier.

What is Camel K? It’s a lightweight integration framework built from Apache Camel and designed for a serverless/microsystem world that runs natively on Kubernetes. It lets developers write integrations in their favorite Camel DSL and quickly deploy them on Kubernetes or Red Hat OpenShift. You can even write your integrations in lightweight languages like Groovy or JavaScript.

We already built language support in VS Code for Apache Camel using the Language Server Protocol (LSP), offering auto-completion for Camel component URIs in both XML and Java. More recently, we began adding the same support for Groovy, JavaScript, YAML, and Kotlin. (See the Apache Camel LSP client project for details.)

Now, with our new Tooling for Apache Camel K by Red Hat extension, we add support for Camel K in your IDE. To illustrate the tools in action, let’s start with a simple user story inspired by an article that Nicola Ferraro wrote a few years ago (Creating a Telegram Bot in 5 minutes with Apache Camel).

Continue reading “Sending a telegram with Apache Camel K and Visual Studio Code”

Share
Python wheels, AI/ML, and ABI compatibility

Python wheels, AI/ML, and ABI compatibility

Python has become a popular programming language in the AI/ML world. Projects like TensorFlow and PyTorch have Python bindings as the primary interface used by data scientists to write machine learning code. However, distributing AI/ML-related Python packages and ensuring application binary interface (ABI) compatibility between various Python packages and system libraries presents a unique set of challenges.

The manylinux standard (e.g., manylinux2014) for Python wheels provides a practical solution to these challenges, but it also introduces new challenges that the Python community and developers need to consider. Before we delve into these additional challenges, we’ll briefly look at the Python ecosystem for packaging and distribution.

Continue reading “Python wheels, AI/ML, and ABI compatibility”

Share
DevNation Live Bengaluru: Dreaming of streaming with reactive programming

DevNation Live Bengaluru: Dreaming of streaming with reactive programming

Our first DevNation Live regional event was held in Bengaluru, India in July. This free technology event focused on open source innovations, with sessions presented by elite Red Hat technologists.

In this tutorial, presented by Edson Yanaga, you’ll learn about reactive programming and why it matters in this new cloud-native era. We’ll use live coding demos to explain how to be reactive and benefit from this brave new streaming world.

Continue reading “DevNation Live Bengaluru: Dreaming of streaming with reactive programming”

Share
4 steps to set up the MQTT secure client for Red Hat AMQ 7.4 on OpenShift

4 steps to set up the MQTT secure client for Red Hat AMQ 7.4 on OpenShift

In this article, we show how to set up Red Hat AMQ 7.4 on Red Hat OpenShift. Also, we show how to connect the external Message Queuing Telemetry Transport (MQTT) secure client to the AMQ 7.4 platform. MQTT is a Java-based client that uses the Eclipse Paho library and can publish and consume messages from Red Hat AMQ 7.4 Broker on OpenShift using secure transport. These commands and code have been verified with OpenShift 3.11.

Continue reading “4 steps to set up the MQTT secure client for Red Hat AMQ 7.4 on OpenShift”

Share
Changes to CentOS: What CentOS Stream means for developers

Changes to CentOS: What CentOS Stream means for developers

Today Chris Wright, vice president and CTO at Red Hat, published a post describing how CentOS is changing and the opportunities it opens for developers in the Red Hat Enterprise Linux (RHEL) ecosystem. The net effect of this change is that, in addition to CentOS Linux 8, there is a new version of CentOS—CentOS Stream—which will provide a “rolling preview” of future Red Hat Enterprise Linux kernels and features. This is being announced in addition to the release of the traditional CentOS Linux 8, which is a downstream rebuild of the current RHEL release.

Continue reading Changes to CentOS: What CentOS Stream means for developers

Share
DevNation Live Bengaluru: Kubernetes serverless application architecture

DevNation Live Bengaluru: Kubernetes serverless application architecture

Our first DevNation Live regional event was held in Bengaluru, India in July. This free technology event focused on open source innovations, with sessions presented by elite Red Hat technologists.

In this session, Burr Sutter discusses serverless architectures, which have become a common approach in organizations that want to be more effective in DevOps and optimize their IT resources. This approach adds further flexibility to the next generation of microservices, and Knative helps running your microservices serverless workloads on Kubernetes/OpenShift be more agile and effective.

Continue reading “DevNation Live Bengaluru: Kubernetes serverless application architecture”

Share
How the new Quarkus extension for Visual Studio Code improves the development experience

How the new Quarkus extension for Visual Studio Code improves the development experience

Earlier this year, we were introduced to Quarkus, the next-generation, container-first framework for Java applications. As expected, such new frameworks and technologies make way for new developer tools focused on making the development experience even better.

The recent Quarkus Tools for Visual Studio Code release aims to do just that, by bringing features specific to Quarkus project development within VS Code. The new VS Code extension is dependent on a couple of Java extensions for VS Code, so it is recommended that you have the Java Extension Pack installed. This article outlines what the Quarkus Tools for Visual Studio Code has to offer: convenient features for an already convenient Java framework.

Continue reading “How the new Quarkus extension for Visual Studio Code improves the development experience”

Share