Day1 「ググる」って裏で何が起きてる?

luagate/5day-challenge/day1-google-searchDay1 - ググるの裏側20体験・イベント

上から下へ、全 20 枚そのまま並べています。

発表モードで開く

Day1 「ググる」って裏で何が起きてる?

5日チャレンジ - 発見

1
1

目次

Day1 の流れ

今日の内容

1 検索ボタンの裏側

2 URL・ドメイン・DNS

3 クライアントとサーバー

4 体験コードとクイズ

2
2

Day1 - ググるの裏側

1

検索ボタンの裏側

3
3
Day1 - ググるの裏側

毎日やってるけど、知ってる?

検索ボタンを押した瞬間、何が起きているのでしょうか?

  • ブラウザがGoogleのサーバーに「検索したい」とお願いする
  • サーバーが検索結果を探して返してくる
  • ブラウザが結果を画面に表示する
  • これがわずか0.数秒で起きている
4
4
Day1 - ググるの裏側

検索の4ステップ

検索ボタンを押してから画面表示までの流れを分解します。

ブラウザが依頼
サーバー処理
結果を返す
画面に表示
5
5

Day1 - URLの仕組み

2

URL・ドメイン・DNS

6
6
Day1 - URLの仕組み

URLとは

URLはインターネット上の「住所」を表す文字列です。

URL

Uniform Resource Locator — 情報がある場所を示す住所

プロトコル(https)

ドメイン(www.google.com)

パス(/search)

クエリ(?q=天気)

7
7
Day1 - URLの仕組み

URLを分解してみる

Pythonを使ってURLを構成要素に分けてみましょう。

python
url = "https://www.google.com/search?q=天気"

protocol = url.split("://")[0]
domain = url.split("://")[1].split("/")[0]
path = "/" + url.split("://")[1].split("/", 1)[1].split("?")[0]
query = url.split("?")[1] if "?" in url else "なし"

print(f"プロトコル: {protocol}")
print(f"ドメイン  : {domain}")
print(f"パス     : {path}")
print(f"クエリ   : {query}")
8
8
Day1 - URLの仕組み

URLの4つのパーツ

それぞれのパーツが果たす役割を見てみましょう。

プロトコル
  • 通信のルール
  • httpsは暗号化通信
ドメイン
  • サーバーの住所
  • 人間が読める形
パス
  • サーバー内の場所
  • 何をしたいかを示す
クエリ
  • 詳しい指示
  • 検索キーワードなど
9
9
Day1 - URLの仕組み

DNSは電話帳

人間が読める住所を、コンピュータが読める数字に変換します。

  • www.google.com は人間向けの住所
  • コンピュータは142.250.196.110のようなIPアドレスを使う
  • DNSがこの変換を担当している
  • ブラウザは毎回この変換を行ってからサーバーに接続
10
10
Day1 - URLの仕組み

DNS電話帳のシミュレーション

辞書を使ってDNSの動きを再現してみましょう。

python
dns_records = {
    "google.com": "142.250.196.110",
    "youtube.com": "142.250.196.78",
    "twitter.com": "104.244.42.193",
    "amazon.co.jp": "52.119.168.104",
}

print("DNSの電話帳")
for domain, ip in dns_records.items():
    print(f"  {domain} -> {ip}")
11
11

Day1 - 通信の仕組み

3

クライアントとサーバー

12
12
Day1 - 通信の仕組み

クライアント・サーバー構成

ブラウザ(クライアント)がサーバーにリクエストを送り、レスポンスを受け取ります。

リクエスト
レスポンス
検索
結果
ブラウザ
Webサーバー
データベース
13
13
Day1 - 通信の仕組み

クライアントとサーバーの役割

お互いの違いを整理します。

項目
クライアント
サーバー

場所

あなたの手元

データセンター

役割

要求する側

応える側

ブラウザ / スマホアプリ

Webサーバー / APIサーバー

状態

常時動いていない

24時間365日稼働

14
14
Day1 - 通信の仕組み

Googleが1秒あたりに処理する検索数

世界中のユーザーが同時に検索しています。

10 万件/秒86420
1万件/秒
3万件/秒
6万件/秒
8万件/秒
10万件/秒
2000年
2010年
2016年
2020年
2024年

出典: Google検索統計(2024年推定)

15
15

Day1 - まとめ

4

体験コードとクイズ

16
16
Day1 - まとめ
クイズ

クイズタイム

今日の内容を確認しましょう。

www.google.com を 142.250.196.110 のようなIPアドレスに変換する仕組みは?

A
HTTP
B
DNS
C
SSL
D
API
17
17
Day1 - まとめ
答え

クイズの答え

www.google.com を 142.250.196.110 のようなIPアドレスに変換する仕組みは?

A
HTTP
B
DNS
C
SSL
D
API

正解は2番目の「DNS」です。

18
18
Day1 - まとめ

ググるの全体像

検索ボタン1つでこれだけのことが起きています。

1. キーワード入力

ブラウザで検索ワードを入力

2. DNS変換

google.com -> IPアドレス

3. リクエスト送信

サーバーに問い合わせ

4. 結果表示

ブラウザが受け取って描画

19
19
"

「ググる」の裏側には、URL・DNS・クライアント/サーバーという仕組みがある。当たり前を疑うと、世界の見え方が変わる。

5日チャレンジ Day1

20
20