0

私はグーグルで検索しましたが、記事の最大数に対する答えしか見つけることができませんでした。

質問:短いバージョン:

共有ホストでJoomla2.5が処理できるカテゴリ(サブカテゴリを含む)の数。どの問題を予期する必要がありますか?

質問:長いバージョン:

私は建築家のためのウェブサイトを構築しています。コンテンツ構造は次のようになります

HOUSES
    Architect A
      Project 1
      Project 2
      ...

    Architect B
      Project 1
      Project 2
      ...

Places
    Architect C
      Project 1
      Project 2
      ...

    Architect D
      Project 1
      Project 2
      ...

等々。最も明白なのは、カテゴリとして家と場所を設定することです。アーキテクトA、アーキテクトB ...サブカテゴリとして、プロジェクトを記事として。これにより、一方ではJoomlas Blog Viewなどを使用でき、サードパーティのCCK拡張機能は使用できなくなりますが、他方では300以上のカテゴリが発生する可能性があります。

いつも素晴らしいご意見ありがとうございます、

トニー

4

3 に答える 3

2

唯一の制限は理論上のものであり、ホスティング環境に大きく依存します。追加するほど、使用されるカテゴリデータをロードするためにより多くのメモリが必要になり、一度に表示される量によってはユーザーインターフェイスが複雑になる可能性があることを知っておいてください。

于 2013-03-24T21:16:28.897 に答える
2

あなたは#__categories表の観点から2147483647の可能なカテゴリーを見ています。

Joomla!次のCategoriesテーブルの2.5の定義:

CREATE TABLE `#__categories` (
  `id` int(11) NOT NULL auto_increment,
  `asset_id`

  <snip ... >

  `language` char(7) NOT NULL,
  PRIMARY KEY  (`id`),
  KEY `cat_idx` (`extension`,`published`,`access`),
  KEY `idx_access` (`access`),
  KEY `idx_checkout` (`checked_out`),
  KEY `idx_path` (`path`),
  KEY `idx_left_right` (`lft`,`rgt`),
  KEY `idx_alias` (`alias`),
  INDEX `idx_language` (`language`)
)  DEFAULT CHARSET=utf8;

ご覧のとおり、主キーはMySQLの署名付き(2147483647)intの最大値として定義されており、デフォルトの開始点である1は、21億をわずかに超えるカテゴリになります。これを参照してください* MySQLのAUTO_INCREMENTに関する注意INT

ノート

AUTO_INCREMENTテーブルごとに1つの列しか存在できず、インデックスを付ける必要があり、DEFAULT値を持つことはできません。列が正しく機能するのAUTO_INCREMENTは、正の値のみが含まれている場合のみです。負の数を挿入すると、非常に大きな正の数を挿入したと見なされます。AUTO_INCREMENTこれは、数値が正から負に「折り返される」ときの精度の問題を回避し、を含む列を誤って取得しないようにするために行われます0

共有ホストでは、主キーのこの制限に達するずっと前にデータベーススペースが不足します#__categories。カテゴリテーブルの残りのレコードは、主キーが使用するスペースの約1300倍のスペースを指定します。(大まかに

そのため、カテゴリテーブルだけでなく、通常のコンテンツがホスティング制限に影響を与える可能性が高くなります。

于 2013-03-24T23:10:41.393 に答える
0

私のテストサイトで行われたいくつかの測定を参照してください(J2.5.x、J3.xでテストしませんでしたが、同じである必要があります):

スクリプト実行ごとの一般的なPHPメモリ制限は40MBです(サーバーのデフォルト)

約800のカテゴリでヒットすると、メモリが使い果たされた致命的なエラーが発生することが予想されます(許可チェックには26MBが必要で、残りのメモリは他のものに残されます...)

これは、カテゴリツリーが作成され、権限がチェックされる場所にあります(例:Joomla記事フォーム)

注:スーパー管理者の場合、カテゴリ権限チェックはメモリを消費しません

注:128MBのメモリ制限を使用すると、最大(約)3500のカテゴリを持つことができます

また、5000以上または10000以上のカテゴリでは、中小規模のパフォーマンスの問題が発生し始めますが、実際にはカテゴリが多すぎます

于 2013-07-20T20:00:43.553 に答える