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.
チャンネル別に見る
自動化
テクノロジー、チームおよび環境に関する IT 自動化の最新情報
AI (人工知能)
お客様が AI ワークロードをどこでも自由に実行することを可能にするプラットフォームについてのアップデート
オープン・ハイブリッドクラウド
ハイブリッドクラウドで柔軟に未来を築く方法をご確認ください。
セキュリティ
環境やテクノロジー全体に及ぶリスクを軽減する方法に関する最新情報
エッジコンピューティング
エッジでの運用を単純化するプラットフォームのアップデート
インフラストラクチャ
世界有数のエンタープライズ向け Linux プラットフォームの最新情報
アプリケーション
アプリケーションの最も困難な課題に対する Red Hat ソリューションの詳細
オリジナル番組
エンタープライズ向けテクノロジーのメーカーやリーダーによるストーリー
製品
ツール
試用、購入、販売
コミュニケーション
Red Hat について
エンタープライズ・オープンソース・ソリューションのプロバイダーとして世界をリードする Red Hat は、Linux、クラウド、コンテナ、Kubernetes などのテクノロジーを提供しています。Red Hat は強化されたソリューションを提供し、コアデータセンターからネットワークエッジまで、企業が複数のプラットフォームおよび環境間で容易に運用できるようにしています。
言語を選択してください
Red Hat legal and privacy links
- Red Hat について
- 採用情報
- イベント
- 各国のオフィス
- Red Hat へのお問い合わせ
- Red Hat ブログ
- ダイバーシティ、エクイティ、およびインクルージョン
- Cool Stuff Store
- Red Hat Summit