ミドルウェア分類役割主な製品
Webブラウザに応答するサーバ
要求された静的データをブラウザに返します。
Web3層構造の場合)
動的な処理が必要な場合にはWebアプリケー
ションサーバーへリクエストを送り、
その結果をブラウザに返します。
Apache HTTP Server
IIS
Nginx
APプログラムを動かすサーバ
Webサーバーからリクエストを受け取り、
Java、PHP、Rubyなどのプログラムを実行し、
Webサーバーに結果を返します。
Cosminexus Application Server
JBoss(Java)
Apache Tomcat(Java専用)
Apacheにmod_phpで拡張(PHP)
Apacheにmod_wsgiで拡張(Python)
WebLogic Server
WebSphere Application Server
IIS
Puma
Unicorn(Ruby)
DBデータベースを置いておくサーバ
DB2
MySQL
Orackle Database
PostgreSQL
SQLServer
バックアップArcserve
Backup Exec
NetBackup
NetVault
ジョブ運用JP1
Senju
SystemWalker
Tivoli
WebSAM
監視Hinemos
JP1
OpenView, Senju
SystemWalker
Tivoli
WebSAM
ZABBIX
※ Beat(beat-box)は外付専用機?
高可用性クラスタCLUSTERPRO
HACMP
HAモニタ
HeartBeat
LifeKeeper


インフラ領域
==========================================
開発領域


【参考】言語ごとの開発環境・実行環境 → 対応するAPサーバ

プログラミング言語実行環境APサーバ
Java(Oracle商標)OracleJDK(Deployment Kit) ※商用利用は有償
OpenJDK 開発環境 ※OSSはOracle他社も作ってる
 >JRE(Java Runtime Environment)実行環境
  >JVM(Virtual Machine)
  >API – Java SE(Standard Edition)
      Jakarta EE(Enterprise Edition)SEの拡張
      Java ME(Micro Edition)組込系
Tomcat

Java実行環境

# OpenJDK 11 インストール (けっこう重たい)

apt -y install openjdk-11-jdk

cat > /etc/profile.d/java.sh <<'EOF'
export JAVA_HOME=$(dirname $(dirname $(readlink $(readlink $(which java)))))
export PATH=$PATH:$JAVA_HOME/bin
EOF

source /etc/profile.d/java.sh

java --version


主なWebサーバ

1995年リリース OSS
小中規模
動的コンテンツ向き
PHP CGI

2002年リリース OSS
大規模 / 並列処理
静的コンテンツ向き

2003年リリース 非OSS
GUI
Windows特化
ASP.NET

2022年、NGiNXがApacheを抜いて首位に。 https://w3techs.com/technologies/overview/web_server

Webサーバの仕組み

@IT – Webの仕組みとWebサーバの構造
杜甫々 – Webにおける拡張子の取り扱い(MIMEタイプ)