2012-10-26 51 views
1

我有一個多租戶網站,用於存儲多個MySQL表中的人員信息。當我需要有關列表人員的不同信息時,我可以從不同的表中拉出。如何在memcached中存儲大列表?

我剛開始使用Memcached,而我更喜歡它。我想用它來加速這個過濾人員名單的過程。

我的問題是,我將如何有效地將人們的信息存儲在memcached中,以便處理查詢時,無論簡單還是複雜,我不必每次都從MySQL數據庫加載所有內容?當我說複雜時,我會查詢多個MySQL表以查找我需要的人員列表。

的幾點思考我:

  1. 存儲所有的人的信息(包括鏈接MySQL表信息)的分佈式緩存。然後,當我需要一組特定的人或需要生成複雜的報表時,我通過memcached中的人員數組而不是查詢MySQL來篩選...可能會有成千上萬的人擁有100行信息我不確定memcached是否可以處理這些數據量。

  2. 每次創建新報表或視圖時,都會存儲人員。它會保存它,所以如果生成相同的報告,它將從memcached中提取。

你可以給任何洞察力將不勝感激。

回答

2

memcached旨在成爲緩存而不是數據庫。做而不是存儲大量的信息,特別是因爲它可能會更快地查詢數據庫中的特定信息,而不是從緩存中加載所有信息,解析出來,然後找到它。