プロジェクト

全般

プロフィール

Bug(バグ) #1556

未完了

[api][optimization] /people/{guid}/{group}?filterBy=hasApp のパフォーマンスが良くない

Shogo Kawahara さんが約14年前に追加. 13年以上前に更新.

ステータス:
New(新規)
優先度:
Normal(通常)
担当者:
-
対象バージョン:
開始日:
2010-09-06
期日:
進捗率:

0%

予定工数:
3.6 で発生するか:
[QA]バグ通知済:
いいえ
3.8 で発生するか:

説明

Overview

/people/{guid}/{group}?filterBy=hasApp のパフォーマンスが良くない

  • 現状、以下のような抽出を一度行なっているため、アプリ所有者数か抽出済みメンバー数が多ければ多いほど処理時間・メモリ使用量が多くなる

lib/util/opJsonDbOpensocialService.class.php

($ids は member_id の配列で、事前に別の条件でフィルタリングされている)

        $memberApplications = Doctrine::getTable('MemberApplication')->createQuery()
          ->where('application_id = ?', $token->getAppId())
          ->execute();
        if (count($memberApplications))
        {   
          $ids = array_intersect($ids, $memberApplications->toKeyValueArray('id', 'member_id'));
        }   
        else
        {   
          $ids = array();
        }   
<pre>

* 取得メンバーが1人の時は、上記のような処理をやる必要はない。(そのメンバーがアプリを所有しているか調べるだけで良い)

他の形式にエクスポート: Atom PDF