記事の項目

最近の投稿

ミニPCでサーバー構築(Ubuntu Web Server パフォーマンス)

Mini PC でUbuntu Server を標準インストールし、 LEMP WEBサーバーを構築してみた。
SkyBarium Mini PC

この記事の項目

mni PC のパフォーマンス

CPU AMD Ryzen7 3750H 

  • TDP 35W
  • CPUコア 4 スレッド 8
  • メモリー DDR4 2400MHz

最大の消費電力は多めですが、実際サーバーとする場合は、ノートPC用なので少ない電力で動作しそうですね.

  1. メモリは DDR4 2666 8GB x2
  2. M.2 NVMe SSD 512GB PCIe GEN3 x1
  3. M.2 無線LANカード有り Fn-Link RLT8821CEIEEE 802.11a/b/g/n/ac+BLE5.0(実測 100Mbps 以下だった)
  4. SATA ケーブルが付属していたので、SATA SSD x1 増設可能

CPUにGPUがのっかているので、16GBのメモリーの一部をGPUが使う。

WEBサーバー構築してパフォーマンスチェック

ubuntu server22.04 LEMP

mini PC にUbuntu Server 22.04 をデフォルトインストールして、次に LEMP※ でウエブサーバーを構築し、WordPress を動作させてみた。

mini PCであるが、AMD Ryzen7 3750はCPU メモリーなどが高速に動作しているので、ローカル環境では、ページの応答性は抜群に早く、簡単なページですが一瞬で表示される。
現在外部に配信している数年前のWEBサーバー Intel(R) Pentium(R) CPU G4560 @ 3.50GHz (キャッシュ等でチューニングされているが、)と比べると数段高速に動作しているようです。
消費電力は、少ないようで、CPU温度は室内温度とほぼ同じです。

※LEMP ( Linux Nginx MySQL or MariaDB PHP ) WordPress を動作させる環境の種類、その他に LAMP ( Linux Apache MySQL or MariaDB PHP ) がある。

Apache Bench

ローカルにLAN接続したubuntuサーバーとmacOSを使用した。
ちょうど、macOSにはApacheがプレインストールされています。
macOSのターミナルからApache Bench コマンドを実行することで、パフォーマンスのチェックを行いました。

Ubuntu LEMP キャッシュなし 簡素なページ

Nginx MySQL PHP でWEBサーバーを構築し、Apache Bench※を使って、 WordPressページのパフォーマンスを調べてみた。
インストールしただけの、全くチューニングしていない状態です。
miniPCでも本体の能力が高いので、実用上全く問題ないが、多くの同時アクセスががあると、少し遅くなる傾向がある。
しかし、キャッシュの設定を全くしていないので当然の結果である。

※Apache Benchは、エラーなしで、どのくらいの同時アクセスが可能か測定できる。

				
					 % ab -n 100 -c 100 http://dname.nh/  
This is ApacheBench, Version 2.3 <$Revision: 1901567 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking dname.nh (be patient).....done


Server Software:        nginx/1.18.0
Server Hostname:        dname.nh
Server Port:            80

Document Path:          /
Document Length:        50519 bytes

Concurrency Level:      100
Time taken for tests:   2.163 seconds
Complete requests:      100
Failed requests:        0
Total transferred:      5072500 bytes
HTML transferred:       5051900 bytes
Requests per second:    46.22 [#/sec] (mean)
Time per request:       2163.447 [ms] (mean)
Time per request:       21.634 [ms] (mean, across all concurrent requests)
Transfer rate:          2289.69 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        1    4   1.3      4       6
Processing:    75 1144 578.6   1182    2034
Waiting:       73 1143 578.6   1180    2033
Total:         80 1148 577.5   1186    2036

Percentage of the requests served within a certain time (ms)
  50%   1186
  66%   1521
  75%   1661
  80%   1731
  90%   1913
  95%   1978
  98%   2029
  99%   2036
 100%   2036 (longest request)
katsuya@M1-mac-mini ~ % 

				
			

次は、サイトの応答性と読み込み速度のテストです。

light house mobileでテストしてみると、パフォーマンスは余裕の100点満点

lighthouse worpress mini server

Ubuntu LEMP キャッシュなし Elementor ページ

				
					% ab -n 100 -c 100 http://dname.nh/
This is ApacheBench, Version 2.3 <$Revision: 1901567 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking dname.nh (be patient).....done


Server Software:        nginx/1.18.0
Server Hostname:        dname.nh
Server Port:            80

Document Path:          /
Document Length:        167604 bytes

Concurrency Level:      100
Time taken for tests:   8.063 seconds
Complete requests:      100
Failed requests:        0
Total transferred:      16794300 bytes
HTML transferred:       16760400 bytes
Requests per second:    12.40 [#/sec] (mean)
Time per request:       8062.651 [ms] (mean)
Time per request:       80.627 [ms] (mean, across all concurrent requests)
Transfer rate:          2034.16 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        1    4   1.5      3       6
Processing:   341 4082 2227.5   4202    7841
Waiting:      213 3942 2221.9   4070    7739
Total:        342 4086 2226.3   4206    7843

Percentage of the requests served within a certain time (ms)
  50%   4206
  66%   5307
  75%   6032
  80%   6413
  90%   7214
  95%   7573
  98%   7806
  99%   7843
 100%   7843 (longest request)

				
			
astra_page

Elementor で作ったページのように複雑になると、当然サイトのスピードは遅くなった。
やはり、キャッシュの設定がないので、アクセスの度にページを作成するので、CPUの負荷は上がる。

結果、サイトのページの表示速度は下がるが、ハードディスクよりは随分と良い。

高速なメモリーとSSD そして CPU は 8コアもあるので、充分なパフォーマンスを有する結果になりました。
ただし、実際に運用に使用する時は、アクセス時にはCUPの使用率が上がるので、さまざまなキャッシュを使ってデータベースのアクセスやPHPの動作を下げたいですね。

Ubuntu LEMP redis cache Elementor ページ

				
					 % ab -n 100 -c 100 http://dname.nh/ 
 
This is ApacheBench, Version 2.3 <$Revision: 1901567 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking dname.nh (be patient).....done


Server Software:        nginx/1.18.0
Server Hostname:        dname.nh
Server Port:            80

Document Path:          /
Document Length:        167195 bytes

Concurrency Level:      100
Time taken for tests:   7.101 seconds
Complete requests:      100
Failed requests:        0
Total transferred:      16753400 bytes
HTML transferred:       16719500 bytes
Requests per second:    14.08 [#/sec] (mean)
Time per request:       7100.827 [ms] (mean)
Time per request:       71.008 [ms] (mean, across all concurrent requests)
Transfer rate:          2304.06 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        1    3   1.2      4       6
Processing:   267 3665 1978.0   3708    6929
Waiting:      164 3532 1978.2   3594    6830
Total:        268 3668 1977.0   3711    6931

Percentage of the requests served within a certain time (ms)
  50%   3711
  66%   4904
  75%   5347
  80%   5744
  90%   6435
  95%   6716
  98%   6908
  99%   6931
 100%   6931 (longest request)
				
			
redis page speed

結果

2023年現在

miniPCのパフォーマンスには驚かされる結果になった。
普通にディスクトップでも充分な動作速度であるにもかかわらず、省電力でコンパクトです。

省電力を生かして、1日24時間動作させるサーバーを構築したら面白いのではないかと考えて実験してみました。

パフォーマンスは何度も言うようにWEBサーバー(WordPressを動作させる環境)くらいでな、充分すぎる結果でした。

あとは、各部品の耐久性があって、データーの二重化ができれば、文句ないかのしれません。

さらに安価なminiPCを、2−3台で運用できれば、データーの損失の確率は下がる、でも、消費電力は2−3倍になるな。

電力は、アクセスが多くないのであれば 5 – 15 W程度で動作するだろうから、3台くらいあっても大した電気料金にはならないだろう。
サーバーとして、数日間動作させてCPUの温度をチェックしたが、外気温と同じくらいだったので、発火の心配も、ないかなとは思っている。

すべてのminiPCのサーバー運用はちょっと考えるが、一部の省電力なminiPCでサーバーを構築するのは、良い選択肢だろうと思います。

サーバーにミニPCを使ってみたい

オンプレミス(自宅)サーバーに選択したいミニPCは、

  1. 省電力CPU(連続稼働させるので、発熱が少なく電気料金が安い方が良い、発熱が少なければファンの動作音は少なくなる)
  2. メモリは多い方が良い、最低16GB、できれば32GBは欲しい
  3. データー容量は、目的によって異なるが、512GBは必要
  4. 低価格ならば、複数台運用も視野に入る

最新のCPUは、複数のコア数とSSDの採用で、パフォーマンスが大幅に向上している。
Linuxサーバーに使用するのであれば、OSなし のモデルがオススメです。

動作速度を求めるのであれば、安くてパフォーマンスが高い AMD Ryzen が面白いですが、総合的には Intel N100 が良さそうです。

省電力 mini PC サーバー次期候補

TDP 6W Intel N100 を搭載したファンレス ミニ PC を購入して検討してみた。
M1 mac mini (シロッコファンが回転しているが、無音に感じる)と同等の TDP 6W なので、省電力無音サーバーへの期待。
そして、質感が高くて安価!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事
ubuntu server

Ubuntu server 構築のお勉強

ユーチューブ動画でUbuntuサーバーの作り方を勉強してみた。英語なのでよく聞き取れないかもしれないが、参考になります。

Translate »