web-dev-qa-db-ja.com

非有効なモジュールはパフォーマンスに影響しますか?

Drupalモジュールは存在するが有効になっていない場合、Drupalサイトのパフォーマンスに影響がありますか?

別の言い方をすると、Drupalサイトで無効にされたモジュールを削除すると、パフォーマンスに良い影響がありますか?

90
markdorison

モジュール選択ページ(admin/build/modulesまたはadmin/modules)を表示している場合を除いて、通常はパフォーマンスに影響しません。無効化されたモジュールはメモリに読み込まれず、実行されません。

96
Dave Reid

はい。できる。

他の人が言っていることにもかかわらず、パフォーマンスが低下するいくつかの状況があります。

  1. 無効になり、適切にアンインストールされていないモジュールは、パフォーマンスに重大な影響を与える可能性があります。モジュールの変数は削除されず、すべてのページ要求で読み込まれます。モジュールのロケール(翻訳されたサイトを使用する場合)は削除されず、すでに厄介なデータベーステーブルにオーバーヘッドが発生します。
  2. Drupalは、システムテーブルをキャッシュとして使用して、ファイルシステムでのモジュールの検索を回避します。そのテーブルにあるエントリが多いほど、遅くなります。システムテーブルのインデックスは非常に適切であるため、この影響はかなり小さいものです。ただし、キャッシュをクリアして管理ページにアクセスすると、このテーブルが再構築されます。 200以上の未使用モジュールを使用してテーブルを再構築すると、未使用モジュールを使用しない場合よりも約25倍遅くなります。このテーブルの再構築の量は、開発中など、一部の奇妙な状況でかなり高くなる可能性があります。

未使用のモジュールは、システムテーブルの再構築中以外はより多くのメモリを使用しません。未使用のモジュールが原因で、システムテーブルの再構築中を除いて、ファイルシステムのルックアップが遅くなったり遅くなったりすることはありません。何千ものモジュールを超えると、ファイルシステム自体が問題を引き起こす可能性があります。

62
berkes

インストール済みでは、drupal modules( "sites/all/modules"または "sites/yoursite .com/modules ")フォルダーですよね?

その場合、無効にしたモジュールは、「admin/build/modules」ページにアクセスしたときだけ、パフォーマンスにまったく影響しません。 Drupalいくつかのモジュール要素のキャッシュを再構築します(- hook_men として))。

8
Strae

私の経験から、無効化されたモジュールによるパフォーマンスの低下はごくわずかです(そして、相対的に、4000の無効化されたモジュールは、30の無効化されたモジュールよりも少し遅くなる可能性があります)。

個人的には、レポやWebディレクトリに配置された未使用の(そしておそらくは古くなっている)コードについてもっと心配していますが、私はそのように保持しています。

7
Christian

厳密にはいいえ。通常無効になっているモジュールはメモリに読み込まれないため、サイトのパフォーマンスには影響しません。ただし、無効化されたモジュールの変数に多くのデータがある場合は、それらをアンインストールしてメモリを解放することをお勧めします。

4
Asif

アンインストールされずにフォルダーシステムから物理的に削除された無効なモジュールは、サイトのパフォーマンスに悪影響を及ぼします。私にはそのようなモジュールが5つあり、そのため、is_dir()関数への追加の10,000呼び出しがありました。 missing_modulesモジュール(missing_module)を使用して不足しているモジュールを特定し、データベースの問題を修正しました。

3

無効になっているモジュールのコードを削除しても、サイトに影響がない場合があります。

次に、いずれかの時点でモジュールをインストールすると、データベースにいくつかのテーブルが追加されます。したがって、インストールするモジュールが多いほど、データベースのパフォーマンスに影響を与える可能性が高くなります。

モジュールをアンインストールすると、それらの不要なテーブルが削除されます。

この場合も、パフォーマンスはインストールしたモジュールの数に依存します。

3
teknikqa

無効化されたモジュールは、drupalサイトのパフォーマンスに影響を与えません。

ただし、サイトで役に立たないモジュールをダウンロードしないことをお勧めします。

1
neetu morwani

アンインストールして無効にしても、パフォーマンスには影響しません。

ただし、モジュールが無効になっている場合のみ、いくつかのテーブルが関連付けられている可能性があるため、これらはdrupalデータベースに余分な負担をかけます。

先に述べたように、drupalのモジュールページにいくつかの重大なパフォーマンスの問題があります。多くの場合、このページは読み込まれず、インストール/アンインストールされたすべてのモジュールがそこに表示されるため、多くの時間がかかります。

したがって、この状況を克服するには、未使用のモジュールを/ sites/all/modules /ドライブから物理的に削除する必要があります。

1
Rajat Gusain