0

各ユーザーが 6 つのクエリを生成するため、私のサイトはデータベースに対して多くのクエリを生成します。その原因を突き止めようとしましたが、私の知識では見つけることができませんでした。誰かがそのクエリのソースを微調整する方法を手伝ってくれませんか?

私が使用した:

  • ジュムラ 2.5.8
  • 主なコンポーネント: CB、クネナ、SH404SEF、K2、コメント、UddeIM PMS
  • 主なモジュール: Gavick News PRO4
  • スパム IP をブロック
  • ボットをブロックする

ユーザーごとに生成されるクエリ:

SELECT *
FROM `_users`
WHERE `id` = 15

SELECT `g`.`id`,`g`.`title`
FROM `_usergroups` AS g
INNER JOIN `_user_usergroup_map` AS m ON m.group_id = g.id
WHERE `m`.`user_id` = 15

SELECT b.id
FROM _user_usergroup_map AS map
LEFT JOIN _usergroups AS a ON a.id = map.group_id
LEFT JOIN _usergroups AS b ON b.lft <= a.lft
                           AND b.rgt >= a.rgt
WHERE map.user_id = 15

SELECT a.rules
FROM _assets AS a
WHERE (a.id = 1)
GROUP BY a.id, a.rules, a.lft

SELECT id
FROM _assets
WHERE parent_id = 0

SELECT b.rules
FROM _assets AS a
LEFT JOIN _assets AS b ON b.lft <= a.lft
                       AND b.rgt >= a.rgt
WHERE (a.id = 1 OR a.parent_id = 0)
GROUP BY b.id, b.rules, b.lft
ORDER BY b.lft
4

2 に答える 2

0

実際には、過剰な数のクエリを生成していたルール フィールドのバグを修正したところです。これは、来週リリース予定の 3.0.4 で修正され、別の 2.5 リリースが公開されるたびに修正されます。それまでの間、自分で修正できます。

https://github.com/joomla/joomla-platform/pull/1792

しかし、それはあなたが尋ねていることではありません。クエリの数は実際には問題ではありません (それは完全に合理的です) 問題は、それらがどれだけ速いかです。

于 2013-01-24T01:06:43.070 に答える
0

もちろん、各ユーザーのクエリを含む CB や Kunena などの拡張機能を使用しているため、使用ごとにかなりの量のクエリが発生します。ホストからメモリの使用量が多すぎる、またはトラフィックが多すぎるというメッセージが表示されない限り、問題はありません。

Joomla は CMS であるため、かなりの数のユーザーがいる場合、この種のことが予想される必要があります。

于 2013-01-23T12:04:02.667 に答える