0

開発者の皆様、こんにちは。

私は現在、ajax ボタン呼び出し (または通常のリダイレクトまたは更新) を使用して CGridview を更新するときに深刻な遅延に遭遇しています。 CGridview が更新されました。ビューを更新するためだけに 3941 MS (または 4.3 秒) を話しているのですが、これは私にはかなりひどいことです!

Yii に必要なすべての拡張機能 (Memcache、PDO MySQL、APC など) が有効になっています。また、次を追加することでこれを解決するためにキャッシュ方法を使用することにも言及しました。

 $dependency = new CDbCacheDependency('SELECT MAX(lu_date) FROM {{issues}}');
 return new CActiveDataProvider(Issue::model()->cache(3600, $dependency, 4), array(
        'criteria' => $criteria,
        'pagination' => array('pageSize' => 20,
        ),
        'sort' => array('defaultOrder' => 'c_date DESC')
    ));

残念ながら、改善は行われませんでした。現在、5 つ以上のリレーションが実装されており、遅延読み込みを使用して CGridview で呼び出されていることに注意してください。これは適切な問題でしょうか?私の現在のサーバーはLAMPです-Linuxベース

これを読んでくれてありがとう、アドバイスや意見は大歓迎です:)

4

1 に答える 1

0

5 つのリレーションがあるため、遅延読み込みで 1+5*20 = 101 個のクエリを作成しています。熱心な読み込みを試す必要があります。

Issue::model()->with('relation1', 'relation2', 'deep.relation3')
于 2013-06-11T16:40:36.487 に答える