操作
Bug(バグ) #122
完了「フレンドの最新ブログ」ガジェットでフレンド全員分のクエリーが実行されるため高負担になる
ステータス:
Won't fix(対応せず)
優先度:
High(高め)
担当者:
-
対象バージョン:
-
開始日:
2009-10-26
期日:
進捗率:
0%
予定工数:
3.6 で発生するか:
3.8 で発生するか:
説明
以前のチケットはhttp://trac.openpne.jp/ticket/3730 です。
「フレンドの最新ブログ」ウィジェットでフレンド全員分のクエリーが実行されています。
そのため、このウィジェットを使用して、フレンドの人数が多い場合、ホームでの動作が非常に重くなってしまいます。BR
インストール直後の状態で、メンバーを100人増やし、全員とフレンドリンクした状態にすると、クエリー実行数は 42 から 234 に増えました。
以下のようなクエリーが実行されていました。
...(省略)... # SELECT member.ID, member.NAME, member.IS_ACTIVE, member.INVITE_MEMBER_ID, member.CREATED_AT, member.UPDATED_AT FROM `member` WHERE member.ID='24' AND member.IS_ACTIVE<>0 # SELECT member_config.ID, member_config.MEMBER_ID, member_config.NAME, member_config.VALUE FROM `member_config` WHERE member_config.MEMBER_ID=24 # SELECT member.ID, member.NAME, member.IS_ACTIVE, member.INVITE_MEMBER_ID, member.CREATED_AT, member.UPDATED_AT FROM `member` WHERE member.ID='25' AND member.IS_ACTIVE<>0 # SELECT member_config.ID, member_config.MEMBER_ID, member_config.NAME, member_config.VALUE FROM `member_config` WHERE member_config.MEMBER_ID=25 # SELECT member_config.ID, member_config.MEMBER_ID, member_config.NAME, member_config.VALUE FROM `member_config` WHERE member_config.MEMBER_ID=26 # SELECT member.ID, member.NAME, member.IS_ACTIVE, member.INVITE_MEMBER_ID, member.CREATED_AT, member.UPDATED_AT FROM `member` WHERE member.ID='27' AND member.IS_ACTIVE<>0 # SELECT member_config.ID, member_config.MEMBER_ID, member_config.NAME, member_config.VALUE FROM `member_config` WHERE member_config.MEMBER_ID=27 # SELECT member.ID, member.NAME, member.IS_ACTIVE, member.INVITE_MEMBER_ID, member.CREATED_AT, member.UPDATED_AT FROM `member` WHERE member.ID='28' AND member.IS_ACTIVE<>0 # SELECT member_config.ID, member_config.MEMBER_ID, member_config.NAME, member_config.VALUE FROM `member_config` WHERE member_config.MEMBER_ID=28 # SELECT member.ID, member.NAME, member.IS_ACTIVE, member.INVITE_MEMBER_ID, member.CREATED_AT, member.UPDATED_AT FROM `member` WHERE member.ID='29' AND member.IS_ACTIVE<>0 # SELECT member_config.ID, member_config.MEMBER_ID, member_config.NAME, member_config.VALUE FROM `member_config` WHERE member_config.MEMBER_ID=29 # SELECT member_config.ID, member_config.MEMBER_ID, member_config.NAME, member_config.VALUE FROM `member_config` WHERE member_config.MEMBER_ID=30 ...(省略)...
操作