Tamam ben şimdiye kadar 50.000 kullanıcıların etrafında bir sosyal ağı var ve sitede arkadaşın kim olduğunu göstermek bir arkadaş tablo var, bu tablo, bir milyon satır olduğunu
Not the tricky part, I show user posted bulletin, status posts, stuff like that that is only visible to people on your friend list. Keep in mind the size of the tables, user table around 50,000 so far and friend table around 1 million
Bir kullanıcıya göstermek için ne statü mesajları bilmek arkadaş listesini alma 1. yöntem aşağıda bu sorguyu çalıştırmak ve bir diziye sonuçları koymak için
select friendid from friend_friend where userid=1 and status=1
Ben daha sonra bir virgülle ayrılmış liste halinde bu diziyi açmak ve bu kullanıcı görüntülemek için izin verilen mesajları getirir mysql sorguda bir IN yan tümcesinde kullanmak istiyorsunuz
O kadar mantıklı umuyoruz.
Now what if I were to save this friend array to a session variable since this query is ran very frequently? One of the drawbacks I see is if a user adds that person as a friend while they are logged in, they would show up as there friend until that session was reset but other then that, would this be bad performance for memory or whatever sessions use?
Ayrıca orada yapman kadar 500 kullanıcılar bazen ve bazı 10.000 arkadaşı ID arkadaşı listesi var ve bu bir PHP / MySQL kurulum dikkat
Oturum veriler hakkında başka bir soru, bu dosyada saklanır ve doğru hafiza sistemi değil mi? Yerine bellek diskte ise bellek çok bir sorun olmamalı?