(No.11) おじさんが、LINE風アプリを開発する - Webサーバの種類を調べてみる

# 前回までのあらすじ
- GitHubを利用して、おじさんの成果物を公開する準備が整いつつあるよ
    - [(No.1) おじさんが、Git・GitHubを利用できるようにしてみる - GitHubにユーザを登録する](https://qiita.com/resojisan/items/4cd09b7a5f33ca8a925d)
    - [(No.2) おじさんが、Git・GitHubを利用できるようにしてみる - GitHubを利用してみる](https://qiita.com/resojisan/items/75dcc83ea55af0db329f)
    - [(No.3) おじさんが、Git・GitHubを利用できるようにしてみる - GitHubからリポジトリを複製（クローン）する](https://qiita.com/resojisan/items/f119d8b71e3bba9eadec)
- 目標を立てたよ、LINE風アプリが作れるようになることを目指すよ
    - [(No.4) おじさんが、何を開発するのか目標を立てるよ](https://qiita.com/resojisan/items/6a8690d21fe9ab00189d)
    - [(No.5) おじさんが、LINE風アプリを開発する - メッセージの送受信を考えてみるよ](https://qiita.com/resojisan/items/6418171fcc80bc3122cf)
- 開発環境の差異を軽減することが出来ないか考えてみるよ
    - [(No.6) おじさんが、LINE風アプリを開発する - 仮想機械、コンテナについて調べてみるよ - その１](https://qiita.com/resojisan/items/b08490e013067994d11e)
    - [(No.7) おじさんが、LINE風アプリを開発する - 仮想機械、コンテナについて調べてみるよ - その２](https://qiita.com/resojisan/items/e9d84723286a297f9a72)
    - [(No.8) おじさんが、LINE風アプリを開発する - Docker Desktopをインストールする](https://qiita.com/resojisan/items/c2e44b85c2657ea5b4b1)
    - [(No.9) おじさんが、LINE風アプリを開発する - VS Code(Visual Studio Code)をインストールする](https://qiita.com/resojisan/items/1f65437d0c504e8a8e61)
    - [(No.10) おじさんが、LINE風アプリを開発する - Dockerを使用してコンテナを作成＆実行してみる](https://qiita.com/resojisan/items/f6dc82058d045fecbed5)


# 今回やること
- 「[(No.5) おじさんが、LINE風アプリを開発する - メッセージの送受信を考えてみるよ](https://qiita.com/resojisan/items/6418171fcc80bc3122cf)」で書いたように、おじさんのメッセージや、他人のメッセージを受け取って、他の誰かに情報を共有するような、仕組みが必要なんだよ。
    - [Webサーバ](https://ja.wikipedia.org/wiki/Web%E3%82%B5%E3%83%BC%E3%83%90)を使えば良さそうなんだけど・・・
        - 種類が様々あって、おじさんには、どのWebサーバを使用すれば良いのかわからないんだよ。
            - どのWebサーバを使用すれば無難なのか確認してみるよ。

# Webサーバの種類
- 2019年6月6日時点

| 名称 | 最新版| 初版リリース日 | 最終更新日 | ライセンス | 商用版 | 開発元 | 実行環境 |
|:--|:--|:--|:--|:--|:--|:--|:--|
| [Apache HTTP Server](https://httpd.apache.org/docs/2.4/programs/httpd.html) | 2.4.39 | 1995年2月 | 2019年4月1日 | [Apache License Version 2.0](http://www.apache.org/licenses/LICENSE-2.0) | ??? | [Apache Software Foundation](https://www.apache.org/) | [Unix,Unix-like systems,Windows](https://httpd.apache.org/docs/2.4/en/install.html) |
| [NGINX](https://www.nginx.com/) | 1.17.0 | 2004年10月4日 | 2019年5月21日 | [2-clause BSD-like license](http://nginx.org/LICENSE) | [NGINX PLUS](https://www.nginx.com/products/nginx) | [Nginx Inc.](https://www.nginx.com/company/)（[F5 Networks Inc.](https://www.f5.com/)） | [macOS、Linux、Windowsなど様々な環境](http://nginx.org/en/#tested_os_and_platforms\)\(http://nginx.org/en/#tested_os_and_platforms) |
| [IIS](https://www.iis.net/) | 10 ??? | 1995年5月30日 | ??? | ??? | ??? | [Microsoft Corporation](https://www.microsoft.com) | Windows??? |

- 他にも様々な製品があるみたいだよ。
- IISについて調べようと思ったんだけど、素人のおじさんには[難解なサイト](https://www.iis.net/)だったよ。
    - 後記のシェアからも、IISを無視することに決めたよ。
    - おじさん、こんなに短気だとは、自分でも思わなかったよ。IISのサイトみてたら、なぜかイライラしたんだよね。日を空けてから調べようかな。おじさんの調べ方が悪いだけなのにね！

# シェア
- それぞれのサイトは調査の方法や、条件が揃っていない可能性があるので、単純に比較することは出来ないと思うよ。
    - 数字の妥当性が不明だから、傾向や雰囲気程度の情報としておじさんは受け止めることにするよ。
        - 2019年6月6日時点では、Apache HTTP Serverと、NGINXが競い合ってる感じがするね。
        - 表内の名称にムラがあるのは、おじさんのせいじゃないんだよ。そのまま引用しているからなんだ。
            - 例えば、NGINXの[公式サイト](https://www.nginx.com/)をみると、全て大文字表記(nginxではなく、NGINX)なんだ。でも、他の引用先ではnginxだったり、Nginxだったりするんだよ。どれが正解なんだろうね？
            - おじさん、細かいこと気になったら眠れない性格なんだよ。ごめんね。

- [www.datanyze.com](https://www.datanyze.com/market-share/web-and-application-servers/apache-http-server-market-share)
    - TOP COMPETITORS OF APACHE HTTP SERVER IN DATANYZE UNIVERSE

| Webサーバ | サイト数 | 割合 |
|:--|--:|--:|
| [Apache HTTP Server](https://httpd.apache.org/docs/2.4/programs/httpd.html) | 15,777,722 | 52.2% |
| [NGINX](https://www.nginx.com/) | 9,282,035 | 30.7% |
| [IIS](https://www.iis.net/) | 3,128,536 | 10.3% |
| OpenResty | 932,169 | 3.1% |
| LiteSpeed Web Server | 833,136 | 2.8% |
| Phusion Passenger| 289,456 | 1.0% |

- [news.netcraft.com](https://news.netcraft.com/archives/2019/04/22/april-2019-web-server-survey.html)
    - Web server developers: Market share of active sites - April 2019

| Web server developer | サイト数 | 割合 |
|:--|--:|--:|
| Apache | 55,982,911 | 30.30% |
| nginx | 38,293,931 | 20.73%	 |
| Google | 14,801,433 | 8.01% |
| Microsoft | 11,298,492 | 6.12% |

- 同サイト
    - Web server developers: Market share of all sites - April 2019

| Web server developer | サイト数 | 割合 |
|:--|--:|--:|
| nginx | 397,728,889 | 27.52%	 |
| Apache | 386,380,893 | 26.73%	 |
| Microsoft | 362,109,196 | 25.05% |
| Google | 25,956,080 | 1.80% |

- [w3techs.com](https://w3techs.com/technologies/cross/web_server/ranking)
    - Percentages of websites using various web servers broken down by ranking - 6 June 2019

| Webサーバ | 割合 |
|:--|--:|--:|
| Apache | 43.7% |
| Nginx | 41.9%	 |
| Microsoft-IIS | 8.5% |
| LiteSpeed | 4.2% |

# あとがき
- Apache HTTP Serverと、NGINXのシェアが多そうな印象だよ。
    - シェアの調査・確認方法についても調べてみたら面白いかもしれないよ。
- NGINXが後発であることがわかったよ。（Apache HTTP Serverは、1995年2月。NGINXは、2004年10月4日）
- いずれが優れているのか、または、そもそも競合するものではないのかなど、もう少し調査してみるよ。

# 余談だよ
おじさん、人見知りかつ疑い深いから、公式サイト以外の情報は引用しないことを心掛けているのだけど、
初見ではよくわからないから、Googleで検索したり、ウィキペディアを見ることがあるんだよね。

そこで面白い気付きがあったんだよ。
例えば、Apache HTTP Serverについてウィキペディアで調べると・・・。

- [日本語版](https://ja.wikipedia.org/wiki/Apache_HTTP_Server)
- [英語版](https://en.wikipedia.org/wiki/Apache_HTTP_Server)

日本語、英語で、同じ内容が書かれているのかなと、おじさん思っていたのだけど、内容がまるで異なることに気が付いたよ。

例えば・・・

- 日本版
    - ライセンスが、「Apache License」とある。
    - プラットフォーム（動作環境）が、クロスプラットフォーム（複数のOS上で動作する）とだけ書いてある。
- 英語版
    - ライセンスが「Apache License 2.0」とある。
    - OS（動作環境）が、「Unix-like, Windows」とあり、具体的な根拠となる引用元のリンクがある。

以上から、最終的には公式サイトから情報収集するしかないって確信したよ。おじさん。
おじさんの気持ちは、おじさんにしかわからないのと同じことだね？？？
でも他人の気持ちを理解する努力をしないと、おじさんみたいにバツイチになってしまうから、なんだかむずかしいね。


# 参照・メモ
[Apache HTTP Server](https://httpd.apache.org/docs/2.4/programs/httpd.html)
[NGINX](https://www.nginx.com/)
[IIS](https://www.iis.net/)