今週末は春節ですね。今日は旧暦の大晦日。
心なしかオフィスに人が少ない気がするのは気のせいか?
閑話休題
インフラの話の前にコンピュータシステムの構造について、、
まず、コンピュータって結局は
{Input}-{処理}-{Output}
の寄せ集めなのです。
どこかからデータを受け取って、加工して、結果をどこかに渡す。
その渡し先もが同じとこだったり、別のところだったり。
大きかったり、小さかったり。
デバイス観点だと
memory(in) - CPU - memory(out)【CPUの演算】
PCIバス - コントローラ - ディスク【HDDの書きこみ】
それがハードウェア観点だと
NW - Server - Storage
そしてシステム観点だと
Web - Aplication - DB
業務サービス観点だと
注文サイト - 在庫管理 - 配送処理(物流観点、お金観点はまた別)
みたいな感じですか。
上記の流れで、デバイス、ハードウェア、システム、業務
下位レイヤが上位レイヤのインフラストラクチャーとなります。
上位レイヤーの仕組みが動くための土台ですね。
それぞれのつなぎ方は決まりがあり、それはドライバの規格だったり、通信プロトコルだったり、
業務手順だったりがあり、つながっている部品が変わっても使えるようにするために
「互換性」というものが必要になります。
インフラは上位のみんなが使えることが大事になってくるのでこの「互換性」が大事です。
なので、インフラがやんなきゃいけないことはその互換性のルール作りと、使う人への周知ということです。
使う人への周知とは
何が出来て、何ができないのか
これに尽きると思います。
でも、前段に何をやりたいかがあることを忘れてはいけません。
そして、それは汎用的に(みんなで)使えるものであるということです。
何をやるためのインフラなのかがあり、
誰でも使えるためには汎用性をもった機能を準備して
みんなで使うためのルールを作る。
これが基盤の考え方。
業務やアプリケーションが特殊で用意した基盤が使えないならば
専用の下位レイヤの機能を作るしかないのです。
それを基盤として巻き取ろうとすると、ルールが煩雑になって
それを使わない人には訳のわからないモノになります。
最近の電気インフラってそうなってきてません?