Intel Atom 330で専用サーバーを使用した経験

最近、私はIntel Atomプロセッサーをベースにしたサーバーに注意を向けようとしまし 。 多くの人が懐疑的な態度で彼らに挨拶しました:「安価なラップトップ用のプロセッサをサーバーに入れることができますか?」 これで、Atomのコロケーションネットトップサービスはすでに普通になりました。IntelAtomでサーバーを使用する毎月の経験を皆さんと共有する準備ができました。



サーバー構成-nVidia Ionプラットフォームに基づくnettop Acer Aspire Revo 3600、Intel Atom 330(2物理コア、64ビット)、4GB DDR2-800メモリ(Ubuntu 64ビットは3.2GBのみで、BIOSはツイストする必要があります)、OCZ Vertex 30Gb SSD。 SSDの最適化のうち、セクションはnoatimeでマウントされ、アクセスログは無効になり、スワップは無効になります(これは寿命を延ばすために必要です—これについては別の記事で説明します。 。



サーバーはAgaveによってホストされました-彼らはすでに公式の料金プランを持っています。

1か月あたり1000ルーブルの場合、比率に関して無制限のトラフィック(これは少々面倒です、特に外国のトラフィック)、無料のKVMを1日1時間(すべて問題なく使用しました)、15-30分間「手で」再起動します。



パフォーマンス:UnixBench



UnixBench 4.1 WHTを開始するには:

                     インデックス値
テストベースライン結果インデックス
 
レジスタ変数を使用したDhrystone 2 376783.7 4769578.3 126.6
倍精度砥石83.1 343.6 41.3
実行スループット188.3 2114.9 112.3
ファイルコピー1024 bufsize 2000 maxblocks 2672.0 59159.0 221.4
ファイルコピー256 bufsize 500 maxblocks 1077.0 15846.0 147.1
ファイル読み取り4096 bufsize 8000 maxblocks 15382.0 657318.0 427.3
パイプベースのコンテキストスイッチング15448.6 137070.2 88.7
パイプスループット111814.6 504798.0 45.1
プロセス作成569.3 7158.0 125.7
シェルスクリプト(8同時)44.8 446.9 99.8
システムコールのオーバーヘッド114433.5 1731146.5 151.3
                                                                  ==========
     最終スコア118.1




VDS-okのパフォーマンスと比較するに、 4GBのメモリ、および64〜256MBがあることを考慮する必要があります。 Unixbenchはメモリの量に依存しません。 また、保証されていないCPUを備えたVDSと注意深く比較する必要があります-穏やかな時間には、サーバー全体のほとんどを提供できます。 倍精度の実数は非常に遅いことが判明しました-幸いなことに、Webサーバーではめったに使用されません。 おそらく、水晶の面積を節約するために、倍精度は「エミュレート」されているので、怖いですか?



パフォーマンス:Webアプリケーション



Apache2 + MySQL5 + PHP 5.3 + APC、nginxがサーバーにインストールされました。 Apache2は4プロセスのプリフォークモードで構成されました:4プロセス未満-システムは100%をロードせず、速度が低下します。 また、速度が遅くなることもあります。 (つまり、最適な子の数-ハイパースレッディングを使用した仮想コアの数に応じて)。 したがって、リクエストキューはnginxで「ハング」し、理想的にはこのタスクに対処します。 MySQLは、〜0.7GBのメモリを消費するように構成されました。 PHPセッションはmemcachedに保存されます。



したがって、Apache + MySQL + PHPはどの負荷でも1GBを超えるメモリを消費しないことが判明しました。



NB: MyISAMでデータを入力するとき、PHPから個別のクエリを使用して、1秒あたり1000回の挿入で400'000行と2つのインデックスを持つテーブルが使用されました。



負荷テストは、ホームページ(http://3.14.by/ru/-6 SQLクエリ、簡単なPHP)、およびPhpBB 3.0.6フォーラムで、APCでのキャッシュを使用して実行されました。 PHP / MySQL / Apache2 / nginxは手作業で最適化されています。 モスクワの別のサーバーから、45の並行リクエストが送信されました。



比較のために-夜間にアンロードされた共有ホスティング(負荷が約0、eu107.activeby.net)、別のサーバー上のクラスター内のMySQL。 12GBのメモリ、プロセッサ-Xeon E5410(4コア)、2.33Ghz。 Apache2、PHP5.2、eAccelerator、nginx。

アトム330 共有Xeon E5410
3.14.by/en

6 SQLクエリ、簡単なPHP
240 RPS 198 RPS
3.14.by/forum

PhpBB 3
30 RPS 21 RPS


* RPS-1秒あたりのリクエスト



なぜAtomは追い越したのですか? ローカルMySQL +数百サイトではなく、2、3サイトの大規模キャッシュ。 特定のタスク用のソフトウェアのセットアップ。



おわりに



結果について議論することはできますが、事実は残ります:すべてが完全に、うまく、非常に迅速に動作し、成長のための多くの空きメモリ、ディスクまたはネットワークのブレーキのヒントさえありません(いつでもモスクワ0.5でpingを突然開始することができます-4ms、ベラルーシまで20ms)。



しかし、彼らが「メメント・モリ」と言うように-あなたのサーバーはいつか壊れます。 メカニックからのファンは1人だけですが、これに備える必要があります。 これがあなたに合わない場合は、VPSのより控えめな機能に満足する必要があります。 一方、何かが起こった場合、あなたは常に状況を完全にコントロールし、誰も「朝食を食べさせて」くれません。



これは、技術の進歩を遅らせる素晴らしい例です。ローエンドのソリューションでさえ、多くのタスクに理想的なソリューションになります。軽量Webサーバー、ファイルサーバー(1ギガビット/秒)、静的配信(1ギガビット/秒)、ストリーミングビデオ(1ギガビット/秒) 。 「厚い」サーバーのタスクは確かに残りますが、少しスペースを空ける必要があります。



個人的に、私は「アトミック」サーバーに満足しています:クレイジー:



未来について



来年(2010年)、次世代のAtomsであるPineview(32nm)が登場します。 主な違いは、統合されたシングルチャネルメモリコントローラです(+たぶん2GBのメモリしかありません)。 これがチップセットのデュアルチャネルよりもサーバーアプリケーションにとって優れているかどうかはわかりませんが、エネルギー消費は間違いなくずっと少なくなります。



本当にクールなのは、小さなARMサーバーの大量生産です。 たとえば、Cortex-A9 MPCoreは、パフォーマンス、熱放散、価格の面ですでに非常に美味しそうに見えます。 サーバーは通常Linux上で実行されるため、別のコマンドシステムで問題は発生しません。現在でも、ARMプロセッサ用のUbuntuがあります。 このようなプロセッサーをSIMDなしでエミュレートされたFPUで作成することは理にかなっています。



また、ARMでは、多くのメモリスロットを見ることができます。長い間2GBモジュールが最も安価です。 逆説的な状況は、300ドルのメモリを購入できるが、それを挿入する場所がないことです:-)ミッドエンドサーバーの8-16スロットは非常においしいでしょう。 なぜそんなに? キャッシュはあまりありません。また、メモリは安価です。 x86では、多くのスロットはミッドエンドセクターにはありません。そのため、高価なソリューションとの不必要な競争が生じないように、ARMの手は解かれています。



ロシア語英語 も読むことができます。



更新: Dellはスリープしていません 。 仲間たち、優雅な道を進んでください! 真実は少し高価で、束をとると400ドルです。



All Articles