Cloud-native environment architecture can be challenging to understand. To help make sense of it for application developers and software/system architects, I will attempt to explain the various parts and how they work together. Toward this end, I find it helpful to think about the architecture in four separate layers: application software development, service scaling, application network, and container orchestration platform.
In this article, I will describe the first technology layer: application software development. I drew the following diagram to make these concepts easier to visualize.
Continue reading “Introduction to cloud-native application environment architecture”
Quarkus continues its cadence of delivering a release every 2-3 weeks. This latest release (0.17.0) contains 125+ changes that include new features, bug fixes, and documentation updates.
Continue reading “Quarkus 0.17.0 now available”
In part 1, I introduced the EventFlow platform for developing, deploying, and managing event-driven microservices using Red Hat AMQ Streams. This post will demonstrate how to deploy the EventFlow platform on Red Hat OpenShift, install a set of sample processors, and build a flow.
Continue reading “EventFlow: Event-driven microservices on Red Hat OpenShift (Part 2)”
At this year’s Red Hat Summit, Red Hat announced Thorntail 2.4 general availability for Red Hat customers through a subscription to Red Hat Application Runtimes. Red Hat Application Runtimes provides application developers with a variety of application runtimes running on the Red Hat OpenShift Container Platform.
Introduction to Thorntail
Thorntail is the new name for WildFly Swarm, and it bundles everything you need to develop and run Thorntail and MicroProfile applications by packaging server runtime libraries with your application code and running it with
java -jar. It speeds up the transition from monoliths to microservices and takes advantage of your existing industry standard Java EE technology experience.
Continue reading “Announcing Thorntail 2.4 general availability”
In Part 7 of this series, we looked at details that determine how your integration becomes the key to transforming your customer experience. It started with laying out the process of how I’ve approached the use case by researching successful customer portfolio solutions as the basis for a generic architectural blueprint. Let’s continue looking at more specific examples of how these blueprints solve specific integration use cases.
Continue reading “Integration blueprint example for mobile integration (part 8)”
Microservices is the architecture design favored in new software projects; however, getting the most from this type of approach requires overcoming several previous requirements. As the evolution from a monolithic to a distributed system takes place not only in the application space but also at the data store, managing your data becomes one of the hardest challenges. This article examines some of the considerations for implementing data as a service.
Continue reading “Data as a microservice: Distributed data-focused integration”
I recently had the opportunity to speak at Red Hat Summit 2019. In my session, titled “Vert.x application development with Jaeger distributed tracing,” I discussed how scalable event-driven applications could be built with Eclipse Vert.x, a Java Virtual Machine toolkit for building reactive applications.
Thanks to many developer tools, creating these applications is no longer the most effort-consuming task in IT. Instead, we now have to understand how parts of our application function together to deliver a service, (across dev, test and production environments). This can be difficult because, with distributed architectures, external monitoring only tells you the overall response time and the number of invocations, providing no insight into the individual operations. Additionally, log entries for a request are scattered across numerous logs. This article discusses the use of Eclipse Vert.x, distributed tracing, and Jaeger in the context of this problem.
Continue reading “Building and understanding reactive microservices using Eclipse Vert.x and distributed tracing”
Getting started with distributed tracing can be a daunting task. There are many new terms, frameworks, and tools with apparently overlapping capabilities, and it’s easy to get lost or sidetracked. This guide will help you navigate the open source distributed tracing landscape by describing and classifying the most popular tools.
Continue reading “A guide to the open source distributed tracing landscape”
With the rise of microservices architectures, companies are looking for a way to connect, secure, control, and observe their microservices. Currently, a service mesh such as Istio is the best option to reach this goal.
- Connect: Istio can intelligently control the flow of traffic between services, conduct a range of tests and upgrade gradually with blue/green deployments.
- Secure: Automatically secure your services through managed authentication, authorization, and encryption of communication between services.
- Control: Apply policies and ensure that they are enforced and that resources are fairly distributed among consumers.
- Observe: See what’s happening with rich automatic tracing, monitoring, logging of all your services.
And, as explained in “Distributed microservices architecture: Istio, managed API gateways and, enterprise integration”, a service mesh does not relieve the need for an API management solution. A service mesh manages services and the connections between them, whereas an API management solution manages APIs and their consumers. In this article, I’ll describe how to manage APIs using the Red Hat Integration adapter for Istio.
Continue reading “Manage your APIs deployed with Istio service mesh”
After three years of working on VS Code extensions, my team celebrates 3.8-million installations and more than 20-million downloads—two indicators that we are providing valuable VS Code extensions accepted by fellow developers. We also celebrate that our involvement with Language Server Protocols (LSPs) has helped open source communities of varying sizes to enable a wide selection of IDEs (Integrated Development Environments) and editors that in turn have made these communities stronger. So, how did we get here?
Continue reading “At 3.8-million installations, Red Hat extensions help developers with VS Code, Language Servers, and microservices”