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”
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”
After being introduced to Linux containers and running a simple application, the next step seems obvious: How to get multiple containers running in order to put together an entire system. Although there are multiple solutions, the clear winner is Kubernetes. In this article, we’ll look at how Kubernetes facilitates running multiple containers in a system.
Continue reading “Introduction to Kubernetes: From container to containers”
By following my previous article in this series, you’ve crushed the whole containers thing. It was much easier than you anticipated, and you’ve updated your resume. Now it’s time to move into the spotlight, walk the red carpet, and own the whole Kubernetes game. In this blog post, we’ll get our Kubernetes environment up and running on macOS, spin up an image in a container, and head to Coderland.
Continue reading “How to set up your first Kubernetes environment on macOS”
Red Hat Summit 2019 is rocking Boston, MA from May 7-9 in the Boston Convention and Exhibition Center. Everything you need to know about the current state of open source enterprise-ready software can be found at this event. From customers talking about their experiences leveraging open source in their solutions, to the creators of open source technologies you’re using, and all the way down to hands-on lab experiences on these technologies.
This hands-on appeal is what this series of articles is about. Previously, we looked at the labs in the Cloud-Native App Dev track, and this time, we provide a roadmap to the “Integration and APIs” lab content.
Continue reading “Red Hat Summit 2019 Labs: Integration and APIs roadmap”
Although containers and Kubernetes and microservices seem to come up in every conversation, there’s a big chasm between talking about, demonstrating, and actually using a technology in production. Anyone can discuss containers, many people can demo them, but far fewer are successfully using containers and Kubernetes in a microservices architecture.
Why? There are likely many reasons, but a simple one may be that developers don’t know where to start.
Consider this series of articles your starting point. Relax, read on, and get ready to enter the exciting world of containers, Kubernetes, and microservices.
Continue reading “Containers, Kubernetes, and microservices: Start here”
Knative is not just a hot topic in software development, it’s a whole new way to look at services and functions. As a developer, what do you need to know to take advantage of this cutting-edge technology? Are there important design or implementation considerations? Let’s take a look.
Continue reading “Knative: What developers need to know”
“The question of whether a computer can think is no more interesting than the question of whether a submarine can swim.” (Edsger W. Dijkstra)
Rule-based artificial intelligence (AI) is often overlooked, possibly because people think it’s only useful in heavyweight enterprise software products. However, that’s not necessarily true. Simply put, a rule engine is just a piece of software that allows you to separate domain and business-specific constraint from the main application flow. We are part of the team developing and maintaining Drools—the world’s most popular open source rule engine and part of Red Hat—and, in this article, we will describe how we are changing Drools to make it part of the cloud and serverless revolution.
Continue reading “Quarking Drools: How we turned a 13-year-old Java project into a first-class serverless component”