CakePHP 2.2.0多树重新排序性能

CakePHP 2.2.0多树重新排序性能,php,mysql,cakephp,optimization,tree,Php,Mysql,Cakephp,Optimization,Tree,我使用CakePHP多树行为来存储站点id的类别结构。每个site\u id都有自己的树 数据库中目前只有119条记录,分为8个不同的站点id。但是,当我希望为特定的站点id重新排序树时,我运行以下代码: $this->Category->recursive = -1; $this->Category->reorder(array('id' => $last_category['Category']['parent_id'], 'field' => 'orde

我使用CakePHP多树行为来存储
站点id
的类别结构。每个
site\u id
都有自己的树

数据库中目前只有119条记录,分为8个不同的
站点id
。但是,当我希望为特定的
站点id
重新排序树时,我运行以下代码:

$this->Category->recursive = -1;
$this->Category->reorder(array('id' => $last_category['Category']['parent_id'], 'field' => 'order', 'order' => 'asc'));
这目前需要10-12秒来执行,我不知道我能做些什么来优化它


我正在使用的树行为代码:

我很确定您没有为数据库表使用正确的索引。添加索引。

cakephp的树行为基于修改的前序树遍历范式

有人已经在研究CakPp树行为的性能,但是源代码不再可用。如果您发现它,请与他人分享:

我在用于搜索的列上添加了索引-这仍然不能改善它。这是我尝试的第一次优化:(会是这样吗?