블로그 구독

Middleware, both as a term and as a concept, has been around for decades. As a term, like other terms in the Darwinian world of IT jargon, it has followed a typical fashion lifecycle and is perhaps somewhat past its apogee of vogue. As a concept, however, middleware is more relevant than ever, and while a memetic new label hasn't quite displaced the traditional term, the capabilities themselves are still very much at the heart of enterprise application development.

Middleware is about making both developers and operators more productive. Analogous to standardized, widely-used, proven subassemblies in the manufacture of physical goods such as cars, middleware relieves developers from "reinventing the wheel" so that they can compose and innovate at higher levels of abstraction. For the staff responsible for operating applications in production, at scale, with high reliability and performance, the more such applications use standardized middleware components and services, the more efficient and reliable the running of the application can be.

This is just as true in the world of cloud-native applications as it is for traditional applications running directly on physical or virtualized hardware. A definitive characteristic of cloud-native environments is the use of the operating system container as the fundamental deployment unit. Thanks to widely and rapidly adopted standardized container technologies such as Kubernetes and Docker, containers have brought a substantial leap ahead over traditional server virtualization in terms of hardware utilization, elastic scaling, and process standardization.

The container is also important for the developer--and ultimately the business--as well. A significant advantage of the container over server virtualization is that containers are more lightweight. Each container instance has the minimum necessary low-level code within it to run its workload, whereas a virtualized server includes an entire operating system instance within it. Because containers are lighter, an application architect can modularize at a finer granularity, with each module running in its own container. In a world of virtualized servers it wouldn't make sense to decompose an application into a large number of very small modules, each running in its own virtual server--the overhead of so many redundant operating system instances would be too high. But with containers, dividing the application into many small pieces is viable and has many benefits. This approach is called microservices.

Why should the business person care? An application architected as fine-grained microservices can be changed in very small ways, with minimized risk and disruption to the overall application. This means that the business leader can innovate in small, fast, low-risk steps, working side-by-side with the development team responsible for implementing these innovations in the software that manifests the business.

Which brings us, from the bottom up, to a virtuous circle characterizing business today: nearly all enterprises depend in significant ways on software, and in order to compete more effectively, these companies are looking to innovate more rapidly, in a trial-and-error rather than massive-planning sort of way. This is the reality of business disruption happening now, in domains ranging from financial services to healthcare, hospitality to media, manufacturing to retail. This is digital transformation.

So here's the fundamental chain of logic: digital transformation both enables and depends on rapid innovation; rapid innovation depends on the ability to quickly change in small steps; such incrementalism is enabled by a fine-grained, microservices architecture; containers are the key enabler of viable microservices.

Now we come back to middleware. We've argued that a) developers are more efficiently innovative if they can think and design and build with standardized components, and b) supporting business innovation means enabling small incremental change with a fine-grained, containerized, microservices architecture. It follows that middleware for this new world should enable a microservices approach, meaning, as a starting point, that the middleware is itself containerized and cloud-native.

Mike Piech is vice president and general manager of Middleware for Red Hat


저자 소개

Imaginative but reality-grounded product exec with a passion for surfacing the relevant essence of complex technology. Strong technical understanding complemented by ability to explain, excite, and lead. Driven toward challenge and the unknown.

Read full bio

채널별 검색

automation icon

오토메이션

기술, 팀, 인프라를 위한 IT 자동화 최신 동향

AI icon

인공지능

고객이 어디서나 AI 워크로드를 실행할 수 있도록 지원하는 플랫폼 업데이트

open hybrid cloud icon

오픈 하이브리드 클라우드

하이브리드 클라우드로 더욱 유연한 미래를 구축하는 방법을 알아보세요

security icon

보안

환경과 기술 전반에 걸쳐 리스크를 감소하는 방법에 대한 최신 정보

edge icon

엣지 컴퓨팅

엣지에서의 운영을 단순화하는 플랫폼 업데이트

Infrastructure icon

인프라

세계적으로 인정받은 기업용 Linux 플랫폼에 대한 최신 정보

application development icon

애플리케이션

복잡한 애플리케이션에 대한 솔루션 더 보기

Original series icon

오리지널 쇼

엔터프라이즈 기술 분야의 제작자와 리더가 전하는 흥미로운 스토리