NGINX.COM
Web Server Load Balancing with NGINX Plus

現在、非常に多くのJava開発者が、アプリケーション性能を最適化するのに多大な時間と労力を費やしています。開発者は、ウェブ、モバイル、AI/ML(人工知能と機械学習)、エッジなど多岐にわたるクラウドベースのビジネス要件に取り組んでいます。直面する最も大きな障害の一つは、JavaとKubernetes間の互換性の低さです。簡単な処理さえ時間がかかるのは、不慣れなランタイム環境やプログラミン言語を習得して採用する必要があるからです。プロジェクトのscaffolding(スキャフォールディング)を行ってこれに対処すれば、時間を節約し、頭痛の種を解消することができます。

Scaffolding(スキャフォールディング)とは?

ソフトウェア開発においてスキャフォールディングとは、プログラムを開発およびテストしながら、一時的または汎用的なコードを作成することを指します。簡素化の例としては、ランタイムエラーをテストするためのコードの付加、フォーム記入ページのモックアップ作成などがあります。このモックアップすなわちスキャフォールドは、最終的なフォーム記入がどのように機能するかを示しますが、最終版とは見かけが異なっていたり、異なるコードを使用したりする場合があります。どちらにせよ、その結果は、最終的なシステムやプロジェクトに含めることを意図しない、アプリケーション機能の一時的なスケルトンとなります。

NGINXによるスキャフォールディングの事例

レイヤー7のデータプレーンとしてNGINX Open Sourceを利用する場合、開発者は一般的に、かなりの量のスキャフォールディングを作成して作業を進める必要があります。このスキャフォールディングには、認証と証明書管理の付加、ロギングの設定、オートメーションおよびCI/CD(継続的統合/継続的デリバリー)機能の接続などがあります。我々は、アプリケーションのテストや展開に対するあらゆる主要な要件が、一つまたは複数の高品質オープンソースコンポーネントによって満たされるよう、NGINXエコシステムの拡張に取り組んでいます。詳細については、当社のブログをご覧ください。

Javaプロジェクトのスキャフォールディングを行い、 Kubernetesネイティブなアプリケーションに取り入れる

「NGINX Sprint 2022」にて実施されたこのデモでは、レッドハット(Red Hat)のシニア・プリンシパルデベロッパー・アドボケイト(Senior Principal Developer Advocate)であるDaniel Ohが、Javaプロジェクトを最初からスキャフォールディングした後に、わずかなメモリフットプリントと数ミリ秒の起動時間で、Kubernetesネイティブなアプリケーションとして構築する方法を紹介しています。

さらにDanielダニエルは、内部ループ開発のローカルなデベロッパーエクスペリエンスを複製するというやり方で、リモートのKubernetes環境で既に展開されているアプリケーションのテストとデバッグを継続する方法を解説しています。

Hero image
NGINXクックブック 設定レシピ集(日本語版)

待望の【O'Reilly】NGINX Cookbook日本語版がついに完成!NGINXクックブックは、NGINXを最大限に活用する方法を解説しています。



著者について

Tony Mauro

Sr. Content Marketing Manager

About F5 NGINX

F5 NGINXについて
F5, Inc.は、人気のオープンソースプロジェクト「NGINX」を支援しています。NGINXはモダンアプリケーションを開発・構築するためのテクノロジースイートを提供しています。NGINXとF5製品との併用で、コードからユーザーまでの広範なアプリケーション領域をサポートし、マルチクラウドアプリケーションサービスとしてNetOpsとDevOps間の課題を解決します。

詳しくはnginx.co.jpをご覧ください。Twitterで@nginxをフォローして会話に参加することもできます。