SlideShare a Scribd company logo
1 of 23
2000 年 4 月 TDI Web システム (改訂1版)
目次 【  Web システム 】 ■  Web システム概要 □  CGI  の出現 □  CGI とは □  CGI の問題点 □  アプリケーションサーバとの連動 ■  現在主流の Web システム構成 □  ASP を利用した構成 □  サーブレットを利用した構成 □  参考資料(サーブレットと ASP の比較)
目次 【  Web システム 】 ■  各 Web 技術について □  Web技術分類 □  クライアント側技術 ◇  HTML ◇  Plug-In ◇  Applet □  サーバ側技術 ◇  CGI ◇  ASP ◇  Servlet ◇  JSP
Web システム概要 Web システムは、基本的に ブラウザ と Web サーバ から構成される。 ブラウザは Web サーバに コンテンツ を要求し、 Web サーバは要求されたコンテンツを ブラウザへ返す。 コンテンツとは、 HTML ・画像・動画・音声 などのことである。 ブラウザは、Webサーバから返されたコンテンツを処理し、コンテンツごとにアクションを起こす。 ブラウザ Webサーバ HTML・画像 動画・音声 など コンテンツ コンテンツを要求 コンテンツを返す
CGIの出現 当初Webサーバは、 静的なコンテンツ だけを返すものでした。 しかし、Webシステムの普及につれ、次の要望が高くなりました。 ◇  動的なコンテンツ そこで、Webサーバ側で動的なコンテンツを生成する仕組みができました。この仕組みが CGI です。 ブラウザ Webサーバ コンテンツ生成 CGI プログラム CGI プログラムを要求 コンテンツを返す
CGIとは CGI ( CommonGatewayInterface )とは、 Web サーバ とコンテンツを生成する プログラム との インターフェース のことである。 ■  CGI インターフェース ◇  標準入力 ◇  標準出力 ◇  環境変数 Webサーバ コンテンツ生成 CGI プログラム ◆  標準入力 ◆  環境変数 ◆  標準出力 このインターフェイスが利用できる 言語 であれば、 CGI プログラム を作成することができる。 ■  CGI 対応言語  :  C 、 Perl  など
CGIの問題点 ■  CGI の問題点 ◇  CGI プログラムは、 Web サーバと 同一の端末上 でしか動作させることができないため、 処理分散 ができない。 ◇  CGI プログラムへのアクセスが集中すると、非効率に リソースを消費 し、 Web サーバが 不安定な状態 に陥る。 よって、 CGI は 大規模 や 高負荷 なシステムには 不向き である。 ブラウザ Webサーバ メモリ領域 CGI プログラムへの 集中要求 ブラウザ CGI プログラム CGI プログラム CGI プログラム CGI プログラム CGI プログラム CGI プログラム CGI プログラム
アプリケーションサーバとの連動 CGIが普及するにつれ、Webシステムで複雑な処理の要望が高くなってきた。 しかし、CGIでは前述の問題点 および 次の要望を対応しにくいことが明らかになってきた。 ■  セッション管理 ■  トランザクション管理 ■  処理分散 そこで、 アプリケーションサーバと連動 することにより、上記要望に対応するようになってきた。 ブラウザ Webサーバ アプリケーション アプリケーション サーバ セッション管理 トランザクション管理 コンテンツ生成 アプリケーションを要求 コンテンツを返す 連動 連動
現在主流のWebシステム構成 ■  現在主流のWeb構成 ◇  ASP (Microsoft Active Server Page)を利用した構成 ◇  サーブレット(Java Servlet)を構成 これら構成で作成されたシステムは、利用者側からすると違いは現れません。 違いは、 開発・運用面 で現れます。 次にこれらの構成について説明します。
ASPを利用した構成 ■  構成 ■  長所 □  VBプログラマを有効に活用できる □  導入コストを軽減できる □  実行環境の構築が容易 □  事例が多い ■  短所 □  プラットホームとして、NTサーバしか選択できない(ノンマルチプラットホーム) □  IISと同一の端末上でしか動作できない(分散処理不可) □  複雑な処理には、別途他言語(C、VBなど)での開発が必要 □  Webサーバを選択できない □  スクリプト言語のため、リクエスト毎にコンパイル処理があり、サーバの負荷・レスポンスに影響 ブラウザ IIS コンテンツ生成 ASP プログラム ASP プログラムを要求 コンテンツを返す
サーブレットを利用した構成 ■  構成 ■  長所 □  プラットホームをいろいろ選択できる □  ほとんどの処理をJavaだけで作成できる □  Webサーバと実行環境を分けれる □  Webサーバを選択できる ■  短所 □  開発要員不足 □  別途、サーブレットエンジン製品の購入が必要 □  ASPより環境面が複雑 □  事例が少ない ブラウザ Webサーバ サーブレット サーブレットエンジン コンテンツ生成 サーブレットを要求 コンテンツを返す 連動 連動
参考資料(サーブレットと ASP の比較) プラットホーム 実行環境 備考 複雑な処理 サーブレット PC からメインフレームまで Web サーバと分散可能 Java  のみで処理可能 開発要員 Java  プログラマが必要だが人口が少ない ASP Windows NT/95/98 のみ Web サーバと分散不可 別途、 VB  や  C  などの他の言語が必要 VB プログラマ資源を有効に活用できる 実行環境構築 Web サーバ ASP に比べ若干複雑 選択可能 容易 IIS のみ(選択不可) 開発費用 高価(製品購入が必要) 低価( NT Server  に標準バンドル) 事例 少ない 多い
Web 技術について Web 技術は、 ブラウザ側 ・ サーバ側技術 に分けられる。 ■  ブラウザ側技術 □  HTML □  Plug-In □  Applet ■  サーバ側技術 □  CGI □  ASP □  サーブレット □  JSP Webシステムは、これらの技術を組み合わせて構成される。
Web 技術分類 静的 動的 実行型 スクリプト型 クライアント側 Web技術 サーバ側 ◇  HTML ◇  Applet ◇  ASP ◇  JSP ◇  CGI ◇  Servlet
HTML ブラウザ Webサーバ HTML・画像 動画・音声 など コンテンツ コンテンツを要求 コンテンツを返す
Plug-In は、事前にブラウザへインストールし、 ブラウザ機能を拡張 することができるもの。 ◇  長所 ブラウザの標準機能でできない機能を実現できる ◇  短所 ブラウザごとに、Plug-Inを作成インストールする必要がある ◇  例 Acrobat Reader(PDF) Plug-In とは
Plug-In ブラウザ Plug-Inコンテンツを要求 Plug-In インストール ■  Plug-Inインストール ブラウザ Webサーバ Plug-Inコンテンツ コンテンツ Plug-In コンテンツ返す Plug-In モジュール Plug-In 処理 例:  AcrobatReader 例:  PDF ファイル
■  Applet Appletは、ブラウザ上で動作するJavaプログラムです。 ( Java  と  JavaScript  とは、 別物 です。当然、 Applet   と  JavaScript  も 別物 です。) Applet対応ブラウザがあれば、プラットフォームに関係なくブラウザ上で動作する。 ◇  長所 HTMLでできない細かな処理を実現できる。プログラムの配布が不要。 ◇  短所 処理が遅い、インターネットに不向き、いろいろと問題が多い。 Applet
Applet アプレット付きHTMLを要求 ブラウザ アプレット付きHTML返す アプレット処理 アプレット プログラム Webサーバ 所定の場所へ配置 HTML (アプレット付き) コンテンツ アプレットプログラムを要求 アプレットプログラム返す
CGIプログラムを要求 ブラウザ 生成されたコンテンツを返す コンテンツ生成 Webサーバ CGIプログラム コンテンツ CGI
ASPスクリプトを要求 ブラウザ 生成されたコンテンツを返す コンテンツ生成 Webサーバ ASPスクリプト コンテンツ ASP(ActiveServerPage) スクリプト コンパイル
サーブレットプログラムを要求 ブラウザ 生成されたコンテンツを返す コンテンツ生成 Webサーバ サーブレット プログラム コンテンツ サーブレット
JSPスクリプトを要求 ブラウザ 生成されたコンテンツを返す コンテンツ生成 Webサーバ JSPスクリプト コンテンツ JSP(JavaServerPage) スクリプト コンパイル

More Related Content

Similar to Web study

Web制作者がandriodのcddを読んでみた version1.1
Web制作者がandriodのcddを読んでみた version1.1Web制作者がandriodのcddを読んでみた version1.1
Web制作者がandriodのcddを読んでみた version1.1
Masakazu Muraoka
 
Google Compute EngineとPipe API
Google Compute EngineとPipe APIGoogle Compute EngineとPipe API
Google Compute EngineとPipe API
maruyama097
 
Google Compute EngineとGAE Pipeline API
Google Compute EngineとGAE Pipeline APIGoogle Compute EngineとGAE Pipeline API
Google Compute EngineとGAE Pipeline API
maruyama097
 
オープニング
オープニングオープニング
オープニング
konekto
 

Similar to Web study (20)

Web Standards 2018
Web Standards 2018Web Standards 2018
Web Standards 2018
 
API Academy:マイクロサービス化へのファーストステップ
API Academy:マイクロサービス化へのファーストステップAPI Academy:マイクロサービス化へのファーストステップ
API Academy:マイクロサービス化へのファーストステップ
 
WebIntentsにより拓かれる次のWeb
WebIntentsにより拓かれる次のWebWebIntentsにより拓かれる次のWeb
WebIntentsにより拓かれる次のWeb
 
JavaScript And Keywords
JavaScript And KeywordsJavaScript And Keywords
JavaScript And Keywords
 
Migration to AWS part2
Migration to AWS part2Migration to AWS part2
Migration to AWS part2
 
Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...
 
20200708サーバーレスでのAPI管理の考え方
20200708サーバーレスでのAPI管理の考え方20200708サーバーレスでのAPI管理の考え方
20200708サーバーレスでのAPI管理の考え方
 
XDev2010 WindowsAzure
XDev2010 WindowsAzureXDev2010 WindowsAzure
XDev2010 WindowsAzure
 
Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...
 
ハイブリットクラウド環境におけるモダンアプリケーション開発
ハイブリットクラウド環境におけるモダンアプリケーション開発ハイブリットクラウド環境におけるモダンアプリケーション開発
ハイブリットクラウド環境におけるモダンアプリケーション開発
 
Web制作者がandriodのcddを読んでみた version1.1
Web制作者がandriodのcddを読んでみた version1.1Web制作者がandriodのcddを読んでみた version1.1
Web制作者がandriodのcddを読んでみた version1.1
 
[GrapeCity Web TECH FORUM 2018]レガシーからの移行 - 株式会社日本プロテック
[GrapeCity Web TECH FORUM 2018]レガシーからの移行 - 株式会社日本プロテック[GrapeCity Web TECH FORUM 2018]レガシーからの移行 - 株式会社日本プロテック
[GrapeCity Web TECH FORUM 2018]レガシーからの移行 - 株式会社日本プロテック
 
2022_1210_WordpressMeetup.pdf
2022_1210_WordpressMeetup.pdf2022_1210_WordpressMeetup.pdf
2022_1210_WordpressMeetup.pdf
 
Google Compute EngineとPipe API
Google Compute EngineとPipe APIGoogle Compute EngineとPipe API
Google Compute EngineとPipe API
 
Google Compute EngineとGAE Pipeline API
Google Compute EngineとGAE Pipeline APIGoogle Compute EngineとGAE Pipeline API
Google Compute EngineとGAE Pipeline API
 
Serverless backendformobilegame and_aws-appsync_gamingtechnight-2
Serverless backendformobilegame and_aws-appsync_gamingtechnight-2Serverless backendformobilegame and_aws-appsync_gamingtechnight-2
Serverless backendformobilegame and_aws-appsync_gamingtechnight-2
 
モダンWeb開発ワークショップ
モダンWeb開発ワークショップモダンWeb開発ワークショップ
モダンWeb開発ワークショップ
 
Leading the way to W3C TPAC 2015 『HTML5 関連の API の現状とこれから』
Leading the way to W3C TPAC 2015 『HTML5 関連の API の現状とこれから』Leading the way to W3C TPAC 2015 『HTML5 関連の API の現状とこれから』
Leading the way to W3C TPAC 2015 『HTML5 関連の API の現状とこれから』
 
Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...Application development with c#, .net 6, blazor web assembly, asp.net web api...
Application development with c#, .net 6, blazor web assembly, asp.net web api...
 
オープニング
オープニングオープニング
オープニング
 

Web study

  • 1. 2000 年 4 月 TDI Web システム (改訂1版)
  • 2. 目次 【 Web システム 】 ■ Web システム概要 □ CGI の出現 □ CGI とは □ CGI の問題点 □ アプリケーションサーバとの連動 ■ 現在主流の Web システム構成 □ ASP を利用した構成 □ サーブレットを利用した構成 □ 参考資料(サーブレットと ASP の比較)
  • 3. 目次 【 Web システム 】 ■ 各 Web 技術について □ Web技術分類 □ クライアント側技術 ◇ HTML ◇ Plug-In ◇ Applet □ サーバ側技術 ◇ CGI ◇ ASP ◇ Servlet ◇ JSP
  • 4. Web システム概要 Web システムは、基本的に ブラウザ と Web サーバ から構成される。 ブラウザは Web サーバに コンテンツ を要求し、 Web サーバは要求されたコンテンツを ブラウザへ返す。 コンテンツとは、 HTML ・画像・動画・音声 などのことである。 ブラウザは、Webサーバから返されたコンテンツを処理し、コンテンツごとにアクションを起こす。 ブラウザ Webサーバ HTML・画像 動画・音声 など コンテンツ コンテンツを要求 コンテンツを返す
  • 5. CGIの出現 当初Webサーバは、 静的なコンテンツ だけを返すものでした。 しかし、Webシステムの普及につれ、次の要望が高くなりました。 ◇ 動的なコンテンツ そこで、Webサーバ側で動的なコンテンツを生成する仕組みができました。この仕組みが CGI です。 ブラウザ Webサーバ コンテンツ生成 CGI プログラム CGI プログラムを要求 コンテンツを返す
  • 6. CGIとは CGI ( CommonGatewayInterface )とは、 Web サーバ とコンテンツを生成する プログラム との インターフェース のことである。 ■ CGI インターフェース ◇ 標準入力 ◇ 標準出力 ◇ 環境変数 Webサーバ コンテンツ生成 CGI プログラム ◆ 標準入力 ◆ 環境変数 ◆ 標準出力 このインターフェイスが利用できる 言語 であれば、 CGI プログラム を作成することができる。 ■ CGI 対応言語 : C 、 Perl など
  • 7. CGIの問題点 ■ CGI の問題点 ◇ CGI プログラムは、 Web サーバと 同一の端末上 でしか動作させることができないため、 処理分散 ができない。 ◇ CGI プログラムへのアクセスが集中すると、非効率に リソースを消費 し、 Web サーバが 不安定な状態 に陥る。 よって、 CGI は 大規模 や 高負荷 なシステムには 不向き である。 ブラウザ Webサーバ メモリ領域 CGI プログラムへの 集中要求 ブラウザ CGI プログラム CGI プログラム CGI プログラム CGI プログラム CGI プログラム CGI プログラム CGI プログラム
  • 8. アプリケーションサーバとの連動 CGIが普及するにつれ、Webシステムで複雑な処理の要望が高くなってきた。 しかし、CGIでは前述の問題点 および 次の要望を対応しにくいことが明らかになってきた。 ■ セッション管理 ■ トランザクション管理 ■ 処理分散 そこで、 アプリケーションサーバと連動 することにより、上記要望に対応するようになってきた。 ブラウザ Webサーバ アプリケーション アプリケーション サーバ セッション管理 トランザクション管理 コンテンツ生成 アプリケーションを要求 コンテンツを返す 連動 連動
  • 9. 現在主流のWebシステム構成 ■ 現在主流のWeb構成 ◇ ASP (Microsoft Active Server Page)を利用した構成 ◇ サーブレット(Java Servlet)を構成 これら構成で作成されたシステムは、利用者側からすると違いは現れません。 違いは、 開発・運用面 で現れます。 次にこれらの構成について説明します。
  • 10. ASPを利用した構成 ■ 構成 ■ 長所 □ VBプログラマを有効に活用できる □ 導入コストを軽減できる □ 実行環境の構築が容易 □ 事例が多い ■ 短所 □ プラットホームとして、NTサーバしか選択できない(ノンマルチプラットホーム) □ IISと同一の端末上でしか動作できない(分散処理不可) □ 複雑な処理には、別途他言語(C、VBなど)での開発が必要 □ Webサーバを選択できない □ スクリプト言語のため、リクエスト毎にコンパイル処理があり、サーバの負荷・レスポンスに影響 ブラウザ IIS コンテンツ生成 ASP プログラム ASP プログラムを要求 コンテンツを返す
  • 11. サーブレットを利用した構成 ■ 構成 ■ 長所 □ プラットホームをいろいろ選択できる □ ほとんどの処理をJavaだけで作成できる □ Webサーバと実行環境を分けれる □ Webサーバを選択できる ■ 短所 □ 開発要員不足 □ 別途、サーブレットエンジン製品の購入が必要 □ ASPより環境面が複雑 □ 事例が少ない ブラウザ Webサーバ サーブレット サーブレットエンジン コンテンツ生成 サーブレットを要求 コンテンツを返す 連動 連動
  • 12. 参考資料(サーブレットと ASP の比較) プラットホーム 実行環境 備考 複雑な処理 サーブレット PC からメインフレームまで Web サーバと分散可能 Java のみで処理可能 開発要員 Java プログラマが必要だが人口が少ない ASP Windows NT/95/98 のみ Web サーバと分散不可 別途、 VB や C などの他の言語が必要 VB プログラマ資源を有効に活用できる 実行環境構築 Web サーバ ASP に比べ若干複雑 選択可能 容易 IIS のみ(選択不可) 開発費用 高価(製品購入が必要) 低価( NT Server に標準バンドル) 事例 少ない 多い
  • 13. Web 技術について Web 技術は、 ブラウザ側 ・ サーバ側技術 に分けられる。 ■ ブラウザ側技術 □ HTML □ Plug-In □ Applet ■ サーバ側技術 □ CGI □ ASP □ サーブレット □ JSP Webシステムは、これらの技術を組み合わせて構成される。
  • 14. Web 技術分類 静的 動的 実行型 スクリプト型 クライアント側 Web技術 サーバ側 ◇ HTML ◇ Applet ◇ ASP ◇ JSP ◇ CGI ◇ Servlet
  • 15. HTML ブラウザ Webサーバ HTML・画像 動画・音声 など コンテンツ コンテンツを要求 コンテンツを返す
  • 16. Plug-In は、事前にブラウザへインストールし、 ブラウザ機能を拡張 することができるもの。 ◇ 長所 ブラウザの標準機能でできない機能を実現できる ◇ 短所 ブラウザごとに、Plug-Inを作成インストールする必要がある ◇ 例 Acrobat Reader(PDF) Plug-In とは
  • 17. Plug-In ブラウザ Plug-Inコンテンツを要求 Plug-In インストール ■ Plug-Inインストール ブラウザ Webサーバ Plug-Inコンテンツ コンテンツ Plug-In コンテンツ返す Plug-In モジュール Plug-In 処理 例: AcrobatReader 例: PDF ファイル
  • 18. ■ Applet Appletは、ブラウザ上で動作するJavaプログラムです。 ( Java と JavaScript とは、 別物 です。当然、 Applet と JavaScript も 別物 です。) Applet対応ブラウザがあれば、プラットフォームに関係なくブラウザ上で動作する。 ◇ 長所 HTMLでできない細かな処理を実現できる。プログラムの配布が不要。 ◇ 短所 処理が遅い、インターネットに不向き、いろいろと問題が多い。 Applet
  • 19. Applet アプレット付きHTMLを要求 ブラウザ アプレット付きHTML返す アプレット処理 アプレット プログラム Webサーバ 所定の場所へ配置 HTML (アプレット付き) コンテンツ アプレットプログラムを要求 アプレットプログラム返す
  • 20. CGIプログラムを要求 ブラウザ 生成されたコンテンツを返す コンテンツ生成 Webサーバ CGIプログラム コンテンツ CGI
  • 21. ASPスクリプトを要求 ブラウザ 生成されたコンテンツを返す コンテンツ生成 Webサーバ ASPスクリプト コンテンツ ASP(ActiveServerPage) スクリプト コンパイル
  • 22. サーブレットプログラムを要求 ブラウザ 生成されたコンテンツを返す コンテンツ生成 Webサーバ サーブレット プログラム コンテンツ サーブレット
  • 23. JSPスクリプトを要求 ブラウザ 生成されたコンテンツを返す コンテンツ生成 Webサーバ JSPスクリプト コンテンツ JSP(JavaServerPage) スクリプト コンパイル