2012-02-19 10 views
0

これが正しい投稿サイトであるかどうかはわかりませんが、わかります。ページごとにSQLクエリのphp数が異なる

私は、ユーザーが他のユーザーを購読し、各ユーザーが自分のデータをチェックするためにサブスクライバーとサブスクリプションの2ページを持つアプリケーションを構築しています。

私はサブスクリプションページにサブスクリプション/購読解除ボタンを追加しました(ログインしてサブスクリプションの所有者でなければなりません)。ユーザーにサブスクライブしている各ユーザーの隣にありますが、ログインしたユーザーが購読しているかどうか、適切なボタンを表示していない。

たとえば、私は20ページの項目を表示する必要があります...私は50のSQLクエリに行くことができるページをレンダリングするために必要ないくつかの他のデータと...これは正常ですか?私は多くのクエリに道を使用していますか?

EDIT:

これは私がこれは正常です

public function hasSubscribedTo($user_id){ 
    $this->db->where('uid', $this->session->userdata['uid']); 
    $this->db->where('suid', $user_id); 
    $sql = $this->db->get($this->db->dbprefix('subscribers')); 
    return $sql->num_rows(); 
} 
+0

クエリの例を表示します。私の推測では、必要以上のクエリを実行しているが、実行しているクエリに完全に依存している – MatBailie

+0

私は投稿を更新しました。他のクエリは、まだ、サブサブ、ユーザーデータ、ユーザープロファイルデータなどの取得に必要なものがあります。 – fxuser

答えて

0

適切なボタンを表示するために私のサブスクリプションのいずれかに加入しているかどうかを確認するために呼び出す機能です。しかし、常に1つのクエリを持つことができ、期限切れのデータをX秒間でキャッシュすることができます。代わりにキャッシュを読み取る必要があります。ページネーションやリアルタイムチェックではこのようなことは正常です。

memcacheについてお読みください。

memcacheモジュールは、memcachedで非常に効果的なキャッシュデーモンへの便利な手続き型およびオブジェクト指向のインターフェイスを提供します。これは、特に動的Webアプリケーションのデータベース負荷を軽減するために設計されました。

関連する問題