
【初心者向け】現役エンジニアがクラウドとは何かを分かりやすく解説します【スマホ / Webエンジニアが語る】
こんにちわ。
これまで、六年ほどWebとスマホアプリの開発をやってきました。
エンジニアの視点からすれば、特に僕のような二十代の若いエンジニアであればあるほど、
クラウドと呼ばれる最新のハイテクテクノロジーにはそこまで謎な印象ではないと思います。
しかし、IT業界にいない人や、プログラミングをしてWebサイトを運用したことない人や、
高齢の方であれば、
殆どクラウドというものが何を指すのかもよくわかっていないようです。
何回効いてもよくわからない、そんな感じではないでしょうか。
でも、そういう疑問が出てくるのが当たり前のことだと思うわけです。
なぜならば、広い定義をしてしまえば、インターネットサービスは全部クラウドとも呼べてしまうからです。
例えば、Twitterにアカウントを作って、そこに投稿をするだけでも、
一応それはクラウドサービスを利用してるとも言えなくもないわけで、Twitterはクラウドだとも言えてしまいます。
つまり、インターネットサービスは全部、一応クラウドだと言えてしまうわけです。
こうなると、クラウドが何が凄くてそんなに流行っているのかもよく分からず、実態がつかめなくなってしまいます。
ですので、本日のコンテンツでは、
クラウドとは何か?ということを、初心者の方でも分かりやすく解説をしてみたいと思いました。
クラウド技術を理解するには、作る人と、使う人の立場と、レイヤーを分けて考えると謎が解けていくと思うので、
もし興味があれば、是非とも最後までお付き合いください。
クラウドのアプリとクラウドじゃないアプリの例
クラウドじゃないアプリの例
ではまず、分かりやすく解説する為に実例を上げてみたいと思います。
クラウドじゃないアプリの典型例としては、
マイクロソフトのExcelやWordと言ったパソコンの中にインストールして使うアプリが考えられます。
それから、Outlookなどのメールソフトもパソコンにインストールして使いますよね。
Outlookに関しては、メール送信するときには一応ネットに接続しないといけないですけども、
WordとかExcelならネットにつながってない状態でも、一回ネットからダウンロードすれば問題なく使えますよね。
このように、クラウドではないアプリというのは、ネットがなくても使えるのかどうか?という判断基準が一つあります。
クラウドアプリの例
では、今あげたクラウドじゃないアプリとは逆に、
クラウドのアプリに置き換えて考えてみましょう。
まず、マクロソフトのExcelとかWordを、クラウドアプリとして考えると、
グーグルドキュメントは、そのままマイクロソフトのWordみたいに使えますし、
グーグルスプレッドシートは、そのままマイクロソフトのExcelみたいに使えますよね。
そして、これらのアプリはブラウザで動いてますよね?
自分のパソコンにダウンロードしてないじゃないですか?
ネットに接続されたオフライン状態なら使えないじゃないですか?
こういう違いが、クラウドとクラウドじゃないアプリに言えます。
クラウドはアプリだけではなくサーバーにも言えます
また、クラウドというテクノロジーはWebアプリだけではなく、
サーバーにも共通して言える言葉になっています。
例えば、プログラミングをしたりwebサイトを運営したことない人には五里霧中かもしれませんが、
全てのwebサイトというのは、どこかのサーバーの中にあるわけです。
例えば、今あなたが読んでいるこのブログというのは、
Xサーバーというクラウドサーバーを提供してる会社の、サーバーの一部を借りて、
その中にワードプレスやらPHPをインストールしてネットにつながっています。
もし、この世界にクラウドサーバーを提供している会社がないとすれば?
僕は自分でデスクトップパソコンなり買ってきて、外付けの拡張容量なども接続して、沢山のデータが入るようにして、
其の中にワードプレスをインストールして、PHPなどの環境も整えて、自宅のパソコンをネットに開放して、
世界中からアクセスできるようにしなければいけません。
もし、自分の家のコンセントが外れたりしてパソコンの電源が切れてしまったら、
その時点でwebサイトにもアクセスできなくなってしまいます。
これは大変ですよね。
でも、昔はみんなこういう方法でウェブサイトを運営してたのです。
しかし、今の時代では、サーバー専用の会社が、社内ビルや世界のどこかに沢山のコンピューターを用意してくれて、
其の中の一部を僕たち一般人に貸してくれています。
かれらはサーバーが落ちないように日々監視して守ってくれているので、僕たちはサーバーメンテナンスのコストを考えず、
一定のお金を毎月払うことで、そのようなサービスを活用しているわけです。
クラウドサーバーは、米国ではAWSや、GCPや、Azureなど、米国のテックジャイアントの企業も目立ちますけども、
Xサーバーや、さくらインターネットなどの会社も、提供していて、多くの人が使ってると思います。
クラウドにはレイヤーがあります
今説明させてもらった、Webアプリのクラウドと、サーバーのクラウドには、それぞれレイヤーがありまして、
SaaS(Software as a Service) | ソフトウェアを提供するクラウドサービス |
IaaS (Infrastructure as a Service) | サーバー(インフラ)を提供するクラウドサービス |
とか言ったりします。
まあ、これだけではないんですけども、
こういう感じでクラウドという世界は成り立ってきました。
このように考えると、Twitterなどのサービスも、概念で見ればSaaSという風に言えますよね?
例えば、SNSとして使わずに、
鍵アカウントにして、自分の毎日の一言日記を投稿する日記アプリとして使えば、
自分のパソコンにインストールしなくても、クラウドで使える日記アプリで便利だなという感じで、
見ることもできるわけです。
まとめ
はい、では今日の記事は以上になります。
クラウドの定義は結構あいまいで、よくわからなくなることもありますけども、
クラウドを使ってwebサービスを開発する人、クラウドのウェブアプリを使う人を考えてみたり、
実際にアプリを例にして考えてみると分かりやすいですよね。
まあ、何度も言いますけども、まだまだクラウドの技術は奥が深いので、
是非とも興味ある人は深堀して勉強してみてください。