Rich Sharples, senior director of product management, and Mike Piech, vice president of marketing, got together for a half hour at the end of the Summit day today to discuss some of the major issues that have come out related to middleware this week. There have been some major announcements: the new microprofile project, the release of Red Hat JBoss EAP 7, the growth of microservices, and the recent acquisition of 3scale and what that means for API management in Red Hat Middleware.
As a quick summary, two of the major themes underscoring a lot of the announcements around JBoss, middleware, and Java this week relate to things that are micro: microservices and microprofile.
Microservices has been a subtext in many of the JBoss EAP 7 sessions and in the OpenShift sessions because this containerized, immutable, consistent environment is what makes microservices possible.Containers fundamentally enable microservices. You have an underlying runtime that is commensurate with the idea of “micro.” You can scale elastically, add instances to scale up and down. The opportunity to change things as an application travels from the desktop to the data center is much less. These are communicating systems, and that’s what container orchestration is. It coordinates these complex webs. we’re The application is the only thing that matters. Operations is there to support the application. I hit a build button and it goes through my CI/CD system, and it’s the same configuration in the environment.
However, like any application or project architecture, it’s more than “JBoss + OpenShift = awesome microservices.” There has to be consideration and weight given to the application and the underlying technology to find a structure that fits. Microservices architecture isn’t about taking everything you’ve got and decomposing it into atomic services. It’s about having a range of sizes and services, depending on what you need. It is important to be conscious of the trade-offs that come from the increased complexity of the system. It really depends on the organization and the technology platforms they have what architecture is appropriate.
That need to understand and define the underlying framework to do microservices effectively is the theme of the second topic: the microprofile. There are defined specifications for different Java platforms (Standard and Enterprise) but both have the assumption of large-scale, full server architectures. New wave development, though, is increasingly small, with small services in those larger complex systems. What Java EE introduced to development was consistency and dependability. As we move into a new containerized world, we must do it responsibly, preserving the consistency and stability of previous environments. The microprofile project was created because a lot of vendors – Red Hat, IBM. Tomitribe, Payara – were just on a Slack chat, discussing what they needed to do for microservices and ways they could implement it. And then there was a lightbulb: maybe there’s something here. This is a chance to bring the whole Java community around a new architecture, with the strengths and discipline they’ve already developed.