LAMP環境とは
みなさんご存知の iPhoneのアプリやネットのサービス、システムたちは
全てエンジニアの汗水たらしながら(リリース前は白目むいて徹夜しながら)作り上げた
涙と寝不足の結晶である。
では、そのサービス達って、どうやって作られているのか?
IT業界入るまでは
『は!?なんで繋がらないの?意味わかんないしこのサービスまじ使いにくい』
みたいなこと普通に言ってた気がします。ごめんなさい。
では、そのエンジニアの努力の結晶はどのように反映されて
我々のPCやスマホの中に反映されるのか?
簡単に言うと、データをたくさん貯める箱を作り、
インターネット回線を使って(ネット使わないこともある)
それを出し入れしたりする指示を書いている。
という感じ。
その王道バリューセットが、よく言うLAMP環境である(今この例を出すのはいかがなものかという議論は無しです
そして、
これからプログラミングを学んでいこうと思う人達の、最初の登竜門が
LAMP環境)での開発勉強になる。(多分)
そもそもLAMP環境とは何?
↓
ググるとこう出てきます。
『LAMP環境とはWEBシステムを作る際に使用するツールの頭文字のこと。』
Linux(WEBサーバのOS)
Apache(WEBサーバ)
MySQL(データベース)
よくわからないですよね。
なので
超要約LAMP環境とは ↓
Linux=図書館 Apache=図書館の玄関 MySQL=本と本棚 PHP=図書館のスタッフ(司書)
となります。
<例えば>
『そうだ、少年ジャンプの初回創刊号を読みたいから、国立図書館に借りに行こう。』
とします。(本当にやったことがある)
がしかし!
ど、ドアがない!
え?なんでドアない?????????
ってなったら図書館入れないじゃないですか。
なので、図書館(Linux)に、ドア(Apache)を作ってあげるんです。
このApacheが、みんなが見たいサイトの入り口を作るわけ。
ふぅっ!
やっと図書館に入れました。
よーし!
受付で頼んでジャンプを書庫から出してもらおう!
と思ったら、、、、
受付誰もいないし。
しかも、え???
ほ、、本棚が、ない!!!!!
見渡す限り本が山積み状態やねん!!!!!!!!!!
1200万冊の山の中から少年ジャンプ創刊号とか探せないじゃないですかー!
とか無駄に叫んでも無駄であり、
もし探してたら人生かけても見つからない。
ってなりますよね。
そうならないように本は本棚(MySQL)に収めるんですよね。
がしかし、
でも、ここでたとえば漫画、小説、史実書とかカテゴリ詳細分けないで、
まさかのあいうえお順だけで整理整頓しちゃうと
『し』から始まる本、300万冊あるじゃん!!!!!
とかなること必至ですよね。
だから、速攻でお目当の本を探せるように、
きちんと作品やカテゴリ、年代などの詳細カテゴリをしっかりと仕組み作りを行い
(MySQLのチューニング)
司書さんが簡単に検索できるような指示やマニュアルを用意しておくんですよね。(PHP言語)
まとめると、
図書館(Linux)で
ドアを叩き(Apache)
司書さん(PHP)が検索指示を出し
本棚から本を取り出す(MySQL)
この一連の流れで図書館から本を借りる
(WEBサービスを利用する)のである。
では、何故このいわゆるLAMP環境が一般的なのか?
正直なところ、LAMP環境でなくても、他のものでも良いんですよね。実際は。
例えばOSはwindowsでもいいし、PHPの代わりにPyhonでもいいし、Apacheの他にIISを使用してもOK
それぞれの機能を果たしていれば問題ない。
あくまでもLAMPは手段である。
それでもLAMPが一般的なのは、
①普及しているから
みんな使ってて安心だからってやつ
②みんなが使用している環境が多いから、バグが事前につぶされている可能性高いから
初めて歩く道でも、草木が生えてなく歩きやすい感じ
③学習コストが低いから
すでに多くの情報がたくさんあり、使いやすい環境があるし、
ネット検索も書籍もたくさんある。
④全部無料で始められるから
やっぱ重要。
ということは、
これに尽きる。
次回はWEBシステムは三階層構造の話