#06:ミドルウェアについて知っておこう
ここでは、アプリケーションに必要となる共通機能を提供するミドルウェアについて学習します。ミドルウェアは、OS とアプリケーションの中間に位置して、特定の分野で必要となる機能を提供します。
ミドルウェア
- アプリケーションに必要となる特定分野の共通機能を提供
- OS とアプリケーションの中間に位置する
代表的なミドルウェア
- データベース管理システム
- アプリケーションサーバ
- TPモニタ
- 開発フレームワーク
- ライブラリ
データベース:操作しやすいよう一定の形式で集めたデータの集合
データベース管理システム:データベースを管理するツール
リレーショナルデータベース:
- 複数のテーブルを関連付けてデータベースを構築
- データベースの問い合わせ言語として「SQL」が広く普及
NoSQL
- リレーショナル方式でないデータベースの総称
- ドキュメント型データベース、カラム型データベースなどがある
アプリケーションサーバとは
- Webシステムを、アプリケーションとして動作させるための実行管理ツール
- Web3層システムで、WebサーバとDBサーバの中間に位置する
- ビジネスロジックの実現とデータベース接続などをおこなう
- トランザクション処理を制御するツール
トランザクション
- 「すべて成功」または「すべて失敗」を保証
- 一部の処理が失敗したら、他の処理を取り消す
- アプリケーションを開発するため土台となるプログラム
- アプリケーションに必要となる基本的な機能を提供
- データベース接続、テンプレートエンジン、アクセス管理など
Webアプリケーションの代表的な開発フレームワーク
- Ruby:Ruby on Rails
- Python:Django
- PHP:Laravel
- 特定の機能を持ったプログラム
- 他のアプリケーションなどから呼び出して利用
- 呼び出し元からは、一種の部品としてみることができる
ライブラリが提供する機能
- GNU Cライブラリ
- 数値計算・統計解析ライブラリ
- 機械学習ライブラリ
- ソフトウェアの導入・更新・削除を行うツール
- プログラム同士やライブラリの依存関係を管理する
- Linuxディストリビューションやプログラミング言語などの環境ごとに提供
代表的なパッケージ管理システム
- RedHat:RPM
- Debian:APT
- Ruby:RubyGems
- Node.js:NPM
ミドルウェア(M/W)とは - IT用語辞典 e-Words
http://e-words.jp/w/%E3%83%9F%E3%83%89%E3%83%AB%E3%82%A6%E3%82%A7%E3%82%A2.html
データベース(DB)とは - IT用語辞典 e-Words
http://e-words.jp/w/%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9.html
DBMS(データベース管理システム)とは - IT用語辞典 e-Words
http://e-words.jp/w/DBMS.html
Webアプリケーションサーバ(APサーバ)とは - IT用語辞典 e-Words
http://e-words.jp/w/Web%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%B5%E3%83%BC%E3%83%90.html
ビジネスロジックとは - IT用語辞典 e-Words
http://e-words.jp/w/%E3%83%93%E3%82%B8%E3%83%8D%E3%82%B9%E3%83%AD%E3%82%B8%E3%83%83%E3%82%AF.html
トランザクション処理(TP)とは - IT用語辞典 e-Words
http://e-words.jp/w/%E3%83%88%E3%83%A9%E3%83%B3%E3%82%B6%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E5%87%A6%E7%90%86.html
トランザクションとは - IT用語辞典 e-Words
http://e-words.jp/w/%E3%83%88%E3%83%A9%E3%83%B3%E3%82%B6%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3.html
トランザクションモニター - Wikipedia
https://ja.wikipedia.org/wiki/%E3%83%88%E3%83%A9%E3%83%B3%E3%82%B6%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%83%A2%E3%83%8B%E3%82%BF%E3%83%BC
Webアプリケーションフレームワーク - Wikipedia
https://ja.wikipedia.org/wiki/Web%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%83%95%E3%83%AC%E3%83%BC%E3%83%A0%E3%83%AF%E3%83%BC%E3%82%AF
ライブラリとは - IT用語辞典 e-Words
http://e-words.jp/w/%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA.html
パッケージ管理システム - Wikipedia
https://ja.wikipedia.org/wiki/%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E7%AE%A1%E7%90%86%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0