Wordpress、Apache、SVN、MySQLを実行するのに必要なVPS RAMはどれくらいですか?


20

誰もがMySQLインスタンスと同様にワードプレスとサブバージョンでApacheを必要とするだろうVPS RAM(破裂可能なし)の大まかな数字を持っていますか?

Apacheは、いくつかのサイトとSSLをホストします。MySQLにはWordpressデータベースのみがあります。これらのサイトはトラフィックが少なく、1日あたり1ヒット未満です。

回答:


19

各Apacheワーカーは約20〜25MBを消費することに留意してください。したがって、1kヒットが1日8時間で時間的に等間隔になる場合、毎秒0.03リクエストのみを処理する必要があると考えることができます。

すべてのトラフィックが1日1時間に集中していると仮定すると(もちろんそうではありません)、1秒あたり約0.28リクエストを処理する必要があります。

もう1つの問題は、どのくらいのメモリをDBに割り当てたかということですが、それは簡単に知ることができ、かなり固定費です。

最悪の場合、データベース全体を転送する必要があります(ああ、この場合はSQLをリファクタリングしてください!)

短い答えは(IMHO)128MBで十分です。あなたが想像しているトラフィックを考えると、あなたのサーバーはアイドル状態になり、メモリは長時間解放されます。

私は3年間から256 MBのVPSに20のドメインを持っていますが、大丈夫です...合計ヒット数は約1500〜2000です...

OK、メモリは最近安くなっていますが、みんな... 1ギガバイトはいくらですか?

PS:私はもちろんLinuxシステムについて話しているのですが、OSがGUIのみで4GBを消費しているわけではありません:)


13

あなたが説明しているトラフィックの少ない使用法については、小さな計画(256MB-384MB)でうまくいくはずです。ApacheとMySQLがインストールされている場合、デフォルトの設定では、使用可能なRAMがより多く使用されていると想定され、問題が発生する可能性があります。以下を適切な開始点として使用し、必要に応じて調整します。

Apache 2構成ファイル(通常は/etc/apache2/apache2.confまたは/etc/apache2/httpd.confにあります):

StartServers 1
MinSpareServers 3
MaxSpareServers 6
ServerLimit 24
MaxClients 24
MaxRequestsPerChild 3000

MySQL構成ファイル(通常は/etc/mysql/my.cnfにあります):

key_buffer = 16K
max_allowed_packet = 1M
thread_stack = 64K
table_cache = 4
sort_buffer = 64K
net_buffer_length = 2K

また、InnoDBテーブルを使用しない場合は、次の行を追加してInnoDBサポートを無効にする必要があります。

skip-innodb

私はこれらの行のいくつかをで言及していapache2.confます。それらをすべて変更しますか?彼らは標識されていますprefork MPMworker MPMevent MPM
VSYNC

2

私はとの問題持っていた鉱山を私はFastCGIのに切り替えるまで、512MBのRAMで。これにより、パフォーマンスが大幅に向上しました。それまでは30MBの空き容量があり(もちろんキャッシュをカウントしていませんでした)、100MB以上の空き容量がありました。

もちろん、走行距離はサイトのトラフィックによって異なります。そして、トラフィックが増加し始めたら、nginxに切り替えることができます。

自分に快適さを与えるために、1GBに増やしました。

ところで、私はprgmr.comでホストされていますが、価格に触れている人はまだいません。


1
prgmr.comに感謝します。「あなたが愚かだとは思わない」というスローガンが大好きです。:-)
カイルブラント

私は彼らと一緒に行った理由はい、それは、ルークがLOPSAメンバーにローエンドのものに割引を与えているという事実と一緒にいる
マット・シモンズ

私はそれが古すぎることを知っていますが、今ではデジタルオーシャンは誰も彼らを倒すことができないと言うことができる場所だと思います:)
アリ

1

256 MB RAMのVPSで同様のセットアップを実行していますが、Apacheの代わりにlighttpdを実行しています。最初にApacheを試しましたが、256 MB VPSには多すぎました。Apacheを使用する場合は、512 MBのRAMで対応できると言っています。

VPSホスティングに使用するユーザーに応じて、より小さいVPSから始めて、必要に応じてサーバーを再構成せずにサイズを大きくすることができます。


0

1GBで問題ありませんが、可能であれば2GBに移行します。これは、ほとんどの最新のOSの主要なパフォーマンスステップです。


1
1ギガバイトは、大規模なだろうオーバー 1kのヒットの日のために殺します。
ceejayoz

あなたは彼がLinuxを実行していると仮定していますが、Windows 2008 64ビットを実行したい場合はどうすればいいですか?
チョッパー3 09

これは、Apache、MySQL、およびPHPを実行しているサーバー用です。特にApacheでは、Windowsサーバーを使用したくないでしょう。
thomasrutter

0

Apacheの代わりにnginx + php-fastcgiを使用しますが、アプリケーションの負荷は非常に似ています。Subversionアクセスにはsvn + sshを使用しているため、リポジトリにアクセスしている場合を除き、svnserveプロセスは実行されていません。これはすべてUbuntu 8 LTSで実行されています。

現時点では、256mBのうち174mBを使用しており、Webサイトは非常に応答性に優れています(Wordpressビューの平均応答時間は500ms)

             total       used       free     shared    buffers     cached
Mem:           256        252          3          0         22         56
-/+ buffers/cache:        174         81
Swap:          511         12        499

Apache + mod_phpの代わりに、nginxやlighttpdなどの軽量フロントエンドWebサーバーを使用することをお勧めします。Apache + mod_fastcgiでphp-fastcgiにプロキシする場合でも、必要なメモリは少なくなります。

あなたがApacheルートを下るなら、私の腸は512mBがおそらくトリックをするだろうと言います。1または2GBのメモリは、特に大規模な構成に移行するときにほとんどのVPSプロバイダーがコストをどのようにスケールアップするかを考えると、かなり過剰に思えます。


0

私はしばらくこれに苦労してきました。

AlbertTの設定は見事に機能しました。mysqlの設定により、明確な違いが生じ、サイトの閲覧は素晴らしいものになりました。http://laterboltz.com

MySQL構成ファイル(通常は/etc/mysql/my.cnfにあります):

key_buffer = 16K max_allowed_pa​​cket = 1M thread_stack = 64K table_cache = 4 sort_buffer = 64K net_buffer_length = 2K

また、InnoDBテーブルを使用しない場合は、次の行を追加してInnoDBサポートを無効にする必要があります。

skip-innodb

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.