質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

VPS

VPS(バーチャル・プライベート・サーバ)は、仮想化されたサーバをレンタルするサービスで、共有サーバでありながら専門サーバと同等の機能を果たします。物理的な専門サーバより安価で提供できるメリットがあります。

Q&A

2回答

1976閲覧

サクラVPSについて

Mkato

総合スコア118

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

VPS

VPS(バーチャル・プライベート・サーバ)は、仮想化されたサーバをレンタルするサービスで、共有サーバでありながら専門サーバと同等の機能を果たします。物理的な専門サーバより安価で提供できるメリットがあります。

0グッド

0クリップ

投稿2016/01/15 10:27

ゾーン 東京第2ゾーン
メモリ 512 MB
ディスク SSD 20 GB
CPU 1コア

サクラVPSの512MBを利用しているのですが、時々CPUがフルになりサイトの表示などが出来ない場合が御座います。
何か対策御座いますでしょうか?

サーバに設定しているのはcentosになります。(サクラVPSの管理画面から設定出来るos)
ruby on railsのアプリを3-5個設定しています。(ドメインを割り当てているのは2個)
といっても練習用のサーバとして利用しているだけで、DBの書き読み込みなどは殆どなく、cronなども設定しておりません。

ruby 2.1.3
Rails 4.2.3
nginx
unicorn
で利用しています。

主な利用はコードのテストを行ったりする様な感じでしょうか。
googleアナリティクスで確認する限りでは殆どトラフィックも御座いません。一日20ページビュー程。

もう一台サクラVPSを借りていますが、こちらは特に問題なく動いているので、単純にスペックの問題なのかなーとも考えますが、どうなんだろうと。。。
ゾーン 石狩第1ゾーン
メモリ 2 GB
ディスク HDD 200 GB
CPU 3コア

宜しくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

「CPUがフルになる」というのがどういう状態なのかわかりませんが、(恐らくVPSコントロールパネルのリソースモニタの情報でしょうか。)
重くなったタイミングでCPUを占有しているプロセス(やリソース)を特定するのがまず最初にすべきことかと思います。

例えば、SSHのポートに対してアタックを受けている場合はnginxのログを見ても意味が無いですので。

CPU以外のボトルネックがあって、結果としてCPUが待たされている という可能性もありえるので、
出来ればnagiosやzabbixと言ったモニタリングツールを導入してボトルネックを探されることをお勧めします。

投稿2016/01/15 14:39

tanat

総合スコア18709

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Mkato

2016/01/15 15:43

ご回答有難う御座います。 CPUがフルとはご認識の通りで、サクラVPSのコントロールパネルでの状況です。 フルになった状態でしばらく様子をみてみるのですが、なおらない時は強制再起動をしている感じです。 nagiosやzabbixといったモニタリングツールがあるのですね。 このあたりの知識が全くないので色々調べてみたいと思います。 ただ思ったのですがnogiosをインストールしてもサーバのCPUがフルだとモニタリングのプログラムも動かないんじゃないのかなーと考えてしまったのですが。。。 フルになる前の高負荷の状態を監視するといった感じなのかな。。。
tanat

2016/01/15 17:52

まあそういうこともありますけど、情報が無い状態で適当に対応するよりはマシですね。
guest

0

VPSを利用したことがないので、サーバースペック一般の話として聞いてください。

Webアプリケーションサーバの場合、最低限、

  • httpサーバ
  • ロジックエンジン
  • DBMS
  • TCP/IPスタック

が動いていて、最近は

  • SSL/TLS暗号化接続

を追加で使用することが多いと思います。

サーバスペックを見積もる際、これらの機能のうち、

  • TCP/IPスタック
  • SSL/TLS暗号化接続

は処理が重いため、最低限それぞれにCPUコア一つを割り当てるようにしていました。
同時接続数が多いと、httpサーバもクローンが増えたりスレッドが増えたりするので、そのの負荷も上がりますが、今回の場合はそれほど重視する必要はないので、可能であれば2CPUを割り当ててみてください。

ただ、CentOSで運用していてCPUの使用率が振り切る理由については思い当たりません。
例えばtop等でログを取り、CPUの使用率が振り切っている際に動いているプロセスをまずは特定してみてはどうでしょうか。

投稿2016/01/15 12:02

Bear.Antarctic

総合スコア59

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Mkato

2016/01/15 13:29

ご回答有難う御座います。 CentOSで振り切る理由思い当たりませんか。 SSL/TLS暗号化接続の設定はしておりませんしテスト的に作成したアプリしかおいていないのでね。。。 教えて頂いたtopのログとはnginxのログの認識で良いですかね?別に何かのログを必要としますでしょうか? /var/log/nginx/access.log をのerror.logを確認しましたが文字化けですかね?内容を把握する事が出来ませんでした。 又はVPSの特性上他の方の影響を受けてるのかなーとも感がますがどうなんでしょう。 一時的に2CPUに割当出来るといいのですが、サクラVPSだと別契約(別のVPSを利用)が必要となりそうなので難しいかなーと。
Bear.Antarctic

2016/01/15 14:49

topとは、その時点で実行しているプロセスをCPU占有率順に表示するツールです。 http://codezine.jp/unixdic/w/top このあたりを参考にすればいいと思います。 VPSですので、確かに他のVMの影響もあり得ますが、1CPUを占有する契約なのか、シェアする契約なのかで影響は違ってきます。 まず、契約の確認と、topコマンドでのプロセス毎のCPU使用率の取得を試してみてください。
Mkato

2016/01/15 15:23

なるほど、topとはコマンドのことなのですね。勉強になりました。 有難う御座います。 さっそく様子をみてみたいと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問