Upgrade to Pro — share decks privately, control downloads, hide ads and more …

新卒1年目、はじめてのアプリケーションサーバー【IBM WebSphere Liberty】

新卒1年目、はじめてのアプリケーションサーバー【IBM WebSphere Liberty】

2024/09/24に行われた、IBM TechXchange dojoの発表資料です。
アーカイブ動画:
https://video.ibm.com/recorded/134184110

概要:
アプリケーションサーバーに興味がある皆さん、初めての一歩を踏み出してみませんか?
本セッションでは、アプリケーションサーバーとは何か、どのように機能するのかを、新卒1年目社員がIBMのアプリケーションサーバーであるWebSphere Libertyを使用したデモとともに解説します。

座学では、アプリケーションサーバーの基本的な概念から始め、具体的な機能や使用例を初心者の目線で噛み砕いて説明します。
さらに、デモでは実際にIBMのアプリケーションサーバーであるIBM WebSphere Libertyを使用して、簡単な設定を行い、サンプルアプリケーションを実行するまでの流れを見ていきます。

Ryoto Katagiri

January 20, 2025
Tweet

More Decks by Ryoto Katagiri

Other Decks in Technology

Transcript

  1. 1. 座学 • アプリケーションサーバーとは? • IBM WebSphere Libertyのご紹介 2. デモ

    • デモ内容の説明 • サンプルアプリの実行 3. クロージング・QA アジェンダ
  2. 1. 座学 • アプリケーションサーバーとは? • IBM WebSphere Libertyのご紹介 2. デモ

    • デモ内容の説明 • サンプルアプリの実行 3. クロージング・QA アジェンダ
  3. ちょっと脱線:Webサーバー・アプリケーションサーバーの中身の例 アプリケーションサーバーの概要 Webサーバー アプリケーション サーバー Webサーバー 機能 EJBコンテナ 簡易的なWebサーバーとしての機能も 主にJava

    Servlet、JSPを動かす その他機能 業務ロジックやトランザクション管理など メッセージング、バッチ処理など クライアント Webサーバー Webコンテナ
  4. DBを使用した時の処理の流れの例: アプリケーションサーバーの概要 クライアント リクエストを 受け取る 処理をする DBに指示 データ 受け取り 処理をする

    レスポンスを 返す 購入履歴を 確認したい! プレゼンテーション層 Webサーバー データベース サーバー データアクセス層 アプリケーション層 アプリケーション サーバー 参考:https://zenn.dev/naoki_oshiumi/articles/6ef5fe1806d7be
  5. 1. 座学 • アプリケーションサーバーとは? • IBM WebSphere Libertyのご紹介 2. デモ

    • デモ内容の説明 • サンプルアプリの実行 3. クロージング・QA アジェンダ
  6. WebSphere Liberty:軽快で効率的なアプリケーションサーバー IBM WebShere Libertyの概要 特徴 • MicroProfile、Jakarta EE、Java EEをサポート

    • モダンなアプリケーション開発・サーバー運用に 対応した次世代のランタイム • クラウドでの使用やコンテナ環境、リソースの限 定されたIoT環境にも最適 • 完全にモジュール化された実装で、必要な機能だ けを選んで有効化
  7. Libertyでは必要なFeature(機能)だけを選んで有効化できる IBM WebShere Libertyの概要 <featureManager> <feature>jdbc-4.1</feature> <feature>jsp-2.3</feature> </featureManager> Libertyが提供しているFeature servlet-3.1

    servlet-4.0 servlet-5.0 jsp-2.2 jsp-2.3 json-1.0 microProfile-7.0 javaee-8.0 servlet-3.0 … ssl-1.0 oauth-2.0 servlet-3.0 自分の環境 jdbc-4.0 jdbc-4.1 jdbc-4.2 jdbc-4.1 jsp-2.3 servlet-3.1 Libertyの構成ファイル(server.xml) 依存関係も 自動で解決
  8. Libertyでは、新仕様への対応は既存Featureの「置き換え」でなく「追加」 IBM WebShere Libertyの概要 従来のバージョンのFeatureも継続して提供(ゼロ・マイグレーション・ポリシー) Servlet-3.1 Servlet-4.0 Servlet-5.0 Servlet-3.1 Servlet-4.0

    Servlet-5.0 あるバージョン 次のバージョン その次のバージョン Liberty 8.5.5.6 Liberty 18.0.0.2 Liberty 21.0.0.12 一般的なアプリケーションサーバー WebSphere Liberty
  9. Libertyには無償利用可能なオープンソース版が提供されている IBM WebShere Libertyの概要 • オープンソースとして開発 • 無償で利用可能 • 商業利用しやすいEPL(Eclipse

    Public License)で公開 • 製品としてIBMからのサポートを提供 • Open Libertyとバージョンが完全に同期 • 新機能は同じタイミングで製品版でもサ ポート • OSS版で動いたアプリケーションや構成は、 同バージョンの製品版でも全く同じように 稼働
  10. 1. 座学 • アプリケーションサーバーとは? • IBM WebSphere Libertyのご紹介 2. デモ

    • デモ内容の説明 • サンプルアプリの実行 3. クロージング・QA アジェンダ
  11. . ├── Dockerfile ├── README.txt ├── mvnw ├── mvnw.cmd ├──

    pom.xml └── src └── main ├── java │ └── com │ └── demo ├── liberty │ └── config │ └── server.xml └── webapp ダウンロードしたプロジェクトを編集してアプリを開発する デモ内容の説明 アプリのJavaコードをここに格納 Libertyサーバーの設定ファイル、サーバーの構成の設定 アプリケーションのWebコンテンツをここに格納 Mavenプロジェクトの設定ファイルで、依存関係やビルド設定 Dockerイメージを作成するための設定ファイル
  12. . ├── Dockerfile ├── README.txt ├── mvnw ├── mvnw.cmd ├──

    pom.xml └── src └── main ├── java │ └── com │ └── demo ├── liberty │ └── config │ └── server.xml └── webapp 今回のデモで記述するファイル: デモ内容の説明 Servletとなるjavaファイルを追加 featureを追加する記述を行う JSPファイルを追加
  13. . ├── Dockerfile ├── README.txt ├── mvnw ├── mvnw.cmd ├──

    pom.xml └── src └── main ├── java │ └── com │ └── demo ├── liberty │ └── config │ └── server.xml └── webapp 今回のデモで記述するファイル: デモ内容の説明 Servletとなるjavaファイルを追加 featureを追加する記述を行う JSPファイルを追加
  14. 1. 座学 • アプリケーションサーバーとは? • IBM WebSphere Libertyのご紹介 2. デモ

    • デモ内容の説明 • サンプルアプリの実行 3. クロージング・QA アジェンダ
  15. 1. 座学 • アプリケーションサーバーとは? • IBM WebSphere Libertyのご紹介 2. デモ

    • デモ内容の説明 • サンプルアプリの実行 3. クロージング・QA アジェンダ
  16. このあとすぐに試せるハンズオンをご紹介します Open LibertyでつくるHelloWorldタイムアタック https://qiita.com/mi-ta/items/d63b8c169d07cd15431d 【ハンズオン】Visual Studio CodeとLiberty ToolsではじめるOpen Liberty開発 さいしょの

    一歩 https://qiita.com/TTakakiyo/items/5f09be651bec34885c6e 1時間でなんとなくわかった気になる Open Liberty でアプリケーション開発 & コンテナビル ド & OpenShift へデプロイ https://qiita.com/babatch324/items/38d0bfdd18ebdb5bd906 ハンズオン
  17. やってみた:WebSphere traditional から WebSphere Liberty への移行 日時 : 2025/3/6(木)17:00-18:00 場所

    : オンラインのみ 対象 : お客様、ビジネス・パートナー様、その他 参加費 : 無料 WebSphere Traditionalのサポート終了まで、いよいよ最短5年を切りま した。本セミナーでは、WebSphere Traditionalの後継ランタイムとなる WebSphere Libertyへの移行方法について、ツールを使って実践的な視 点で詳しくご紹介します。 さらに、近年注目を集める「DevSecOps」の概念にも焦点を当て、セ キュリティを重視した開発運用の手法を解説します。 GitLabを使った効率的なCI/CDパイプラインの構築方法についても触れ、 現場で即実践できるノウハウをお届けします。 これからのシステム移行や開発運用の未来に備え、是非ご参加ください。 Register today → https://ibm.biz/TXC-20250306-Seminar アジェンダ (予定) • WebSphere Libertyへの移行ツール活用法 • DevSecOpsの重要性とGitLab活用法
  18. ワークショップ、セッション、および資料は、IBMまたはセッション発表者によって準備され、それぞれ独自の見解を反映したものです。それらは情報 提供の目的のみで提供されており、いかなる参加者に対しても法律的またはその他の指導や助言を意図したものではなく、またIBM製品やサービスがお 客様に適用ある特定の法令に適合することを保証するものでもありません。本講演資料に含まれている情報については、完全性と正確性を期するよう努 めておりますが、「現状のまま」提供され、明示または黙示にかかわらず、商業性、特定の目的への適合性、非侵害性を含め、いかなる保証も伴わない ものとします。本講演資料またはその他の資料の使用によって、あるいはその他の関連によって、いかなる損害が生じた場合も、IBMは責任を負わない ものとします。 本講演資料で言及されるIBM製品、プログラム、またはサービスは、IBMがビジネスを行っているすべての国・地域でご提供可能なわけ ではありません。本講演資料で言及される将来の展望(製品リリース日付や製品機能を含む)は、市場機会またはその他の要因に基づいてIBM独自の決 定権をもっていつでも変更できるものとし、将来の製品または機能が使用可能になること、もしくは特定の結果を確約することを意図するものではあり ません。本講演資料は、言及される

    IBM製品またはサービスに適用ある契約条件を変更するものでも、追加の表明または保証を意図するものでもありま せん。 本講演資料に含まれている内容は、参加者の活動によって特定の結果が生じると述べる、または暗示することを意図したものでも、またそのような結果 を生むものでもありません。 パフォーマンスは、管理された環境において標準的なIBMベンチマークを使用した測定と予測に基づいています。ユーザー が経験する実際のスループットやパフォーマンスは、ユーザーのジョブ・ストリームにおけるマルチプログラミングの量、入出力構成、ストレージ構成、 および処理されるワークロードなどの考慮事項を含む、数多くの要因に応じて変化します。したがって、個々のユーザーがここで述べられているものと 同様の結果を得られると確約するものではありません。記述されているすべてのお客様事例は、それらのお客様がどのようにIBM製品を使用したか、ま たそれらのお客様が達成した結果の実例として示されたものです。実際の環境コストおよびパフォーマンス特性は、お客様ごとに異なる場合があります。 • IBM、IBM ロゴ、ibm.com、 WebSphere® 、Open Liberty® は、 世界の多くの国で登録されたInternational Business Machines Corporationの商標 です。他の製品名およびサービス名等は、それぞれIBMまたは各社の商標である場合があります。現時点での IBM の商標リストについては、 www.ibm.com/legal/copytrade.shtmlをご覧ください。 • JavaおよびすべてのJava関連の商標およびロゴは Oracleやその関連会社の商標または登録商標です。 • OpenShiftは、Red Hat Inc.または子会社の米国およびその他の国における商標または登録商標です。