人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

さくらVPS、2GBのHDDと1GBのSSDのパフォーマンスについて

現在、さくらVPSの1GBで短縮URLサービスを運営しています

最近アクセスが増えて重くなってきたので、VPSの2GBかSSDの1GBに乗り換え検討しているのですが、

SQLからUNIQUEなIDに対応するURLを引っ張ってくるサービスの場合は、メモリが多いHDDとメモリが少ないSSD、どちらがいいのでしょうか。

さくらインターネットでは同メモリ容量のHDDに比べてSSDは従来比7倍のストレージ性能だと宣伝していますが、

メモリが多いHDDと比較した場合、どちらがいいのか参考になる資料が見当たりませんでした。

現在の環境はCentOS6+Nginx+PHP+MySQLです。

専門家の方の意見をお待ちしています。よろしくお願いいたします。


●質問者: sloto
●カテゴリ:ウェブ制作
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● oil999
●50ポイント

ただしVPS環境なので、どの位の期間キャッシングが保持できているかは、環境によって異なるので何とも言えません。2GBのメモリでアクティブなサーバが5台程度が同居しているようですと、キャッシュには残らないと考えてください。
これはディスクアクセスについても言えることです。他のアクティブなサーバがディスクI/Oを頻繁に行っているとすると、HDDでもSSDでも速度は稼げません。

Nagiosで監視されているようなので、まずはどのクエリーで負荷がかかっているのか分析してください。クエリーの改善ないしはデータベースの最適化を検討した方が良いと思います。
それも難しい場合は、専用サーバへの移行を検討してください。


2 ● ぽけっとしすてむ
●50ポイント

まずはさくらVPSの構成など整理を。

少し古いですが、さくらのVPSの構成を妄想してみました。 - とあるプログラマの日記 @s025236記事を参考にした纏めがあります。
遊んでいるメモリをキャッシュに使うので便利ですね。

丁度さくらVPSの2GBプランを契約しているので、fioにて調べてみました。

Starting 1 process
random-read: Laying out IO file(s) (1 file(s) / 128MB)
Jobs: 1 (f=1): [r] [91.7% done] [13442K/0K/0K /s] [3360 /0 /0 iops] [eta 00m:01s]
random-read: (groupid=0, jobs=1): err= 0: pid=22110: Sun Feb 24 07:39:27 2013
 read : io=131072KB, bw=11976KB/s, iops=2993 , runt= 10945msec
 clat (usec): min=131 , max=184961 , avg=328.08, stdev=1272.51
 lat (usec): min=131 , max=184962 , avg=328.57, stdev=1272.52

random-readでは、IOPSは3000近いですね。
ちなみに8kで行うと、

random-read: (groupid=0, jobs=1): err= 0: pid=22149: Sun Feb 24 07:40:42 2013
 read : io=8192 B, bw=8000.0KB/s, iops=2000 , runt= 1msec
 clat (usec): min=369 , max=422 , avg=395.50, stdev=37.48
 lat (usec): min=370 , max=423 , avg=396.50, stdev=37.48

このようになります。(8Kbなのできちんとデータが出ません。)
※他社のVPSについては割愛します。

以上を踏まえて、まずは何処が原因であるかを判断する必要があります。

身も蓋もない話になりますが、もしかすると、URLの管理は現状通りSQLにて、実際のURL変換はPHPにてファイルを読み込みとするとパフォーマンスが上がるかもしれません。


3 ● taroe
●50ポイント

>メモリが多いHDD
こちらが良いと思います。

実際には、現状どういう感じの負荷がかかっているかを調査されるべきかと思います。

また、MySQLの設定によりますが、データはメモリーにある程度キャッシングされるはずです。

重いのは、1秒あたりのリクエスト数が増えてるからではないか?と思います。
その場合、どっちにしてもまずはメモリーを増やさないと、ダメだと思います。

たぶんCPU負荷がかかっている状態なのではないでしょうか?
この場合は、メモリーを増やすべきだと思います。

>SQLからUNIQUEなIDに対応するURLを引っ張ってくるサービスの場合

逆に、この程度の処理にSSDの性能が必要かどうかが逆に疑問
実際には、メモリーが1Gでは、MySQLを使う環境としては少ない方なので、メモリーを増やしたほうがDB的にもよさそうに思う。


4 ● boost_beast
●50ポイント

http://vps.sakura.ad.jp/ssdplan.html

使い道によって変わりますね。

>SSDプランは高いIOPSが特長ですので、データベースなど高いストレージ性能が必要な場合などにおすすめです。

とのことなので質問者さんの状況にあったほうを選べばいいと思います。

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ