今日はサーバーについて勉強しました、第2弾です。
前回はサーバー種類や役割について学習しましたが今回は、一体サーバーとはどのような仕組みなのかについて勉強しました。
以前のサーバーの記事でも書きましたがサーバーはサービスを提供する役割を果たします。
サービスという言葉から由来しています。では、そんなサービスを提供するサーバーさん、どういった中身で構成されているのでしょう?
サーバーの中身とは?
サーバーと一言で言っても、たくさんの要素からできています。その中でも重要なのが
1、DB(データベース)
2、プログラム
3、回線
この3つ。これらがサーバーを構成する要素に特に関係します。
どれが欠けても提供を行うことができなくなるのです。
では、サーバーを構成するのに必要な3つを1つずつ順に見ていきたいと思います。
情報を格納する『DB(データベース)』
データベースはいわゆるお客様の情報などを全て格納しているものです。
無料のものと有料のものがあります。有名どころのDBソフトをまとめたものがこちらです。
システムの土台を作る『プログラム』
プログラム、これはいわゆるシステムの土台です。プログラムがあることでシステムを動かすことができます。
C言語とか、Pythonとかのプログラム言語の名前を聞いたことはないでしょうか?
そうなのです、作るシステムによって、最適なプログラム言語が存在します。
プログラム言語の例
C言語(プログラム言語の中でまずは学びたい言語!)、C+、C#
Python(AIに強く最近熱い言語!)
Cobol、 JAVA 、PHP(Webに特化した言語)、
JAVA script (Webに特化した言語) ・・・などなどたくさんあります。
たくさんあってどれがどれだかわからなくなりますが、、、PythonがAIに強く最近熱い言語であったり、PHはWebに特化した言語であったり・・・
作りたいものに合わせて、最適なプログラム言語があるようです。
ちなみに、どの言語もC言語の応用版ということで、C言語を理解すると他の言語もある程度は理解できるとのこと。
電車やエアコンなど身近なシステムも全てC言語によるプログラムで動いています。
接続するのに必要な『回線』
これはDBもプログラムも整ったのちにつなげるために必要なものです。Wi-Fi等がこれに当てはまります。
私の会社では主にWEBに特化したシステムを事業の中で提供しています。
実は、このWebシステムを作るための王道のソフトウェアの組み合わせが存在します。
Webシステムを作る際の王道の組み合わせについて
LAMPとは、データベースを利用したWebアプリケーションを開発するのに適した、人気の高いオープンソースソフトウェアの組み合わせのことです。
OSの「Linux」、Webサーバの「Apache」、データベースの「MySQL」(後にMariaDBも選択肢に追加された)、プログラミング言語および実行環境の「Python」の頭文字を繋いだもののことを言います。
おまけ
プロジェクトについて、サイバーエージェントの社長である藤田さんのプロジェクトを成功させるための秘訣は、全てを内製化すること、
つまり企画者とシステムエンジニア(プログラマー)、デザイナーを外注ではなく会社内で行うことが大切なようです。
こちら動画です。
ネットビジネスのつくり方
https://todai.tv/contents-list/2014FY/premium-salon/vol13
たしかに、みんなが同じ方向を向くことって大事ですよね。
この記事を含めネットワーク関連の勉強はこの本を使用しています。図や絵を使って説明されているため、初めてネットワークを勉強する人にとってもとてもわかりやすいですよ♪