LoginSignup
40
33

More than 5 years have passed since last update.

エンジニアではない人向けのWebサービス技術の基礎知識

Last updated at Posted at 2017-12-20
1 / 48

こんにちは

  • ラクス Advent Calendar 2017の21日目です
  • 今回は、弊社社内の非エンジニアさんの要望により 「最低限これだけ知っておくと、エンジニアさんが話している内容が、理解しやすくなるよ」的な知識を共有します

  • 弊社商材に従事している非エンジニアさん向けなので、情報に少々偏りがあります
  • それでは、どうぞ p21.png

もくじ


p3.png


p3.png


Webサービスの流れ


Webサービスは、PCまたはスマホとインターネット上のWebサーバが通信し合うことで実現します

p3.png


サービスを利用する側はクライアントサイド、サービスを提供する側はサーバサイドと呼ばれます

p4.png


クライアントサイドからサーバサイドへ何か要求することをリクエストと呼びます

p5.png


サーバサイドがクライアントサイドの要求に応答することをレスポンスと呼びます

p6.png


Webサービスは、このリクエストレスポンスの一連の通信で実現します

p7.png


この通信は一般的にHTTPと呼ばれる通信プロトコルで実現しています


通信プロトコル?


  • 「プロトコル」は直訳すると「お約束ごと
  • 例えば「人が話し合いをする上でのお約束事」といえば「同じ言語が話せること」ですよね

p8.png


  • システム同士の通信も同じで、通信する際は互いに同じ「お約束ごと」が使えることが必要になります
  • 通信の場合は、これを「通信プロトコル」と呼んでいます

p9.png


HTTPSとは


  • Webサービスに従事すると、HTTPSと呼ばれるプロトコルを聞くことがあると思います
  • HTTPと同じで、Webページをやりとりする際に使われるプロトコルです
  • HTTPよりもセキュリティレベルが高いプロトコルです

WebサービスではHTTPよりもHTTPSで通信することが強く推奨されています


もくじ


p12.png


クライアントサイドの仕組み


サーバサイドからのレスポンスは、下図のようにブラウザ上でクライアントサイドスクリプトが実行されてから、私たちの目に届いています
p13.png


ブラウザとは


  • サーバサイドからのレスポンスを、PCやスマホ画面上に表示するためのソフトのことです
  • ブラウザでは、クライアントサイドスクリプトの実行HTMLのレンダリングなど、様々な処理が実行されます

Windows標準ブラウザが Internet Exploer(IE) なので、日本での認識率No.1はおそらくIEです

p14.png


ブラウザ別の普及率


  • しかし世界規模で見ると、Chromeがとてつもないスピードで普及していることがわかります(緑グラフ=Chrome)
  • 日本も基本的には同じ傾向ですが、世界に比べIEの比率がやや高めです(青グラフ=IE)

p15.png


クライアントサイドスクリプトとは


  • ブラウザ上で実行されるプログラムのことを指します
  • サーバサイドからのレスポンスにこのプログラムが記載さているとブラウザ上で実行されます

p16.png


一般的にはJavaScriptというプログラミング言語がメジャーです


クライアントサイドスクリプトの良し悪し


p17.png
重要な処理(データの抽出・更新など)は、クライアントサイドスクリプトで行わないなど、使いどころに注意して使用することが大切です


もくじ


p18.png


サーバサイドの仕組み


クライアントサイドからのリクエストは、下図のように①サーバサイドスクリプトを実行して、②データベースへ処理を行い、その結果をクライアントサイドへ返しています

p19.png


サーバサイドスクリプトとは


  • Webサーバ上で実行されるプログラムのことを指します
  • クライアントからの要求を加工してデータベースに渡すこと、データベースからの応答を加工してクライアントに返すことこれが主な役割です

p20.png


一般的にはJava、PHP、Python、Rubyなどのプログラミング言語がメジャーです


データベースとは


クライアントが入力したデータを保存するシステムです
p22.png


  • データベースは通常、下図のエクセルのような表形式で保存されます
  • 1つの表のまとまりをテーブルと呼び、1つのサービスで何百、何千のテーブルが使用されることもあります p23.png

PostgreSQL、MySQL、Oracle Databaseなど様々なデータベースシステムが存在します


以上です。


まとめ


  1. Webサービスの流れ
  2. 通信プロトコルについて
    • HTTPSとは
  3. クライアントサイドの仕組み
  4. ブラウザとは
    • ブラウザ別の普及率
  5. クライアントサイドスクリプトとは
    • クライアントサイドスクリプトの良し悪し
  6. サーバサイドの仕組み
  7. サーバサイドスクリプトとは
  8. データベースとは

  • 今回は、大まかにWebサービスがどのようにして動いているのかを中心に説明しました
  • もし続きを作ることがあれば、次回は少し踏み込んだ技術知識やリアルなエンジニアの業務内容なんかも共有していきたいと思います
40
33
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
40
33