Ben Sosyal ağ fikrinden ama insanlar kapalı bir grup için öğeleri barındıran karmaşık bir PHP sistem üzerinde çalışıyoruz. Yerde birkaç modülleri, fotoğraf ve video galerileri, her modül ve altmodülün hakkında tam yorum sistemini, özel mesajlaşma, bir GUI ile kişisel e-posta ve çok daha fazlası var.
Benim sorunum ben denemek ne kadar zor olursa olsun bir efficient şekilde bildirim ve haber yem parçası, facebook ne gibi bir şey, için arka uç tasarımı gibi olamaz olmasıdır. Modüller yüzden bildirim sistemine onları bağlayan bir problem olmamalı tahrik oldukça fazla olay vardır. Umarım bazı grup beyin fırtınası benim soruna bir son verecektir.
Ben sadece (ben de news feed içermelidir çok uzun ve kaotik sonrası olmak gerekir) bu yazı bildirim kısmında benim endişeleri ele alınacaktır.
İşte benim ilk MySQL tablo taslağı.
notificationID Primary key notificationModule Module type foreign key - photo, video, comment, message notificationConstructor Foreign key of the element (which is of type "notificationModule") that triggered the creation of this notification notificationUser The user that this notification is aimed towards notificationTime Time at which the notification was created notificationFlag Notification has been read flag
Possible Problems / Conflicts
- The event of a user commenting on a photo two different users have already commented on will trigger three notifications? One for the photo uploader and one for each of the commenters? (affecting notificationUser)
- notificationTime oluşturma zamanı. Yukarıdaki sorunu takiben, bu alan notificationUpdateTime ile değiştirilmesi gerektiğini, yeni bir bildirim oluşturmak değil ya da belki de bir kenara bulunmalıdır?
Ben daha az kod karmaşıklık ve daha fazla veritabanı verimliliği doğru hedefliyorum. Kod katmanından veritabanı katmanı ayırmak için çalışırken sitenin bu kısmına bana şaşkın: (
Ben tüm kaygıları ve fikirlere açığım.