drupal 7を実行するために4gのメモリを搭載したサーバーを構成する方法


9

4 GBのメモリを搭載した新しいサーバーにDrupal 7をインストールしています。適切に構成する方法、MySQLに割り当てるメモリ量、PHPに割り当てるメモリ量についてのヒントを教えてください。ZendサーバーでDrupal 7を実行すると、通常のApacheサーバーで実行するよりも3倍高速であることがわかりました。(オペコードキャッシュに関係していると思います。develモジュールでは、メモリの3分の1を使用していることに気付きました。

構成を私と共有できますか?

回答:


5

Drupal7データがすでにある場合は、それをステージング環境にロードし、データの量に基づいていくつかのバッファーサイズ設定を実行する必要があります。

ステップ1)最初に、データセットのバッファサイズを計算する必要があります

ステップ2)推奨サイズがインストールされているRAMの75%(この場合は3GB)を超える場合は、必要なバッファーを3GBに制限します。

ステップ3)InnoDBデータがあり、innodb_file_per_tableを有効にしていない場合は、各テーブルを独自の物理テーブルスペースにセグメント化してInnoDBをクリーンアップする必要があります(これは一度だけ実行する必要があります)

これが完了したら、6か月ごとにこの構成監査(ステップ1および2)を実行して、適切なMySQLキャッシュが適切に配置されていることを確認するように計画する必要があります。

興味深いことに、私はこれと同様の質問に取り組み、2011年4月15日に回答しました


4

注目すべきいくつかのこと

読む記事

Rackspace's:nginxとboostを使用してクラウドにDrupalをデプロイすると、多くのアイデアが得られます。

オペコードキャッシングに関する小さな引用:

オペコードキャッシュとしてAPCを使用します。これにより、ページが読み込まれるたびにサーバーがPHPコードを再コンパイルする必要がなくなります。さらに、全体が簡単にRAMに収まります(通常、APCに128MBのRAMを割り当てます)。これにより、CPU使用率が大幅に減少します。ログインしたユーザーがサイトをより速く閲覧できるようになりました。ただし、まだ限られた数しか処理できません。もう少し上手くできます。キャッシュにアクセスするたびにMySQLをクエリする代わりに、これらのテーブルをメモリに保存できます。ここにmemcachedとcacherouterモジュールがあります。


2

私はmysqlディレクトリのmy_huge confから始めました。ミックスにVarnishキャッシュも追加しました。すでにお分かりのように、Zendはパフォーマンスを大幅に改善します。

数日間実行した後、mysqltunerスクリプトを実行して、主に一時テーブルキャッシュに関するいくつかの推奨事項に取り組みました。


1

サイトのサイズによっては、memcachedも確認する必要があります。これはmysqlとリソースを競合しますが、その負荷を軽減できます。


実際、memcachedが十分に大きければ、InnoDBバッファープールとMyISAMキーキャッシュの両方をスケールダウンできます。このように、memcachedはmysqlと競合しませんが、mysqlはmemcachedをメインデータベースとしてではなくデータコンジットとして単純に補完します。最初にmemcachedを提案するための+1 !!!
RolandoMySQLDBA
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.