darekc
2.10.2006, 07:33:47
Witam,
albo już za długo przy tym siedzę i mi sie myślenie wyłączyło, ale nie mam pojęcia jak rozwiązać system powiadomień. Mamy baze użytkowników, baze towarów i baze kategorii. Jak rozwiązać problem wysyłania powiadomienia do użytkownika (który wcześniej zaznaczył iż chce otrzymywać powiadomienia z danej kategorii) po dodaniu np. 10 nowych towarów do danej kategorii? :roll2:
Xathloc
2.10.2006, 09:02:53
Ja bym podszedł do tego tak:
nowa tabela (5 kolumn), która zawiera:
1. indeks
2. ID użytkownika
3. ID kategorii
4. ilość nowości po kórej wysyłamy powiadomienie
5. data ostatniego powiadomienia
przy dodaniu nowego produktu metoda, która:
1. szuka w powyższej tabeli na podstawie ID kategorii, do której dodano produkt ID użytkowników którzy daną kategorię subskrybują
2. sprawdza ile produktów dodano do danej kategorii od ostatniego powiadomienia wyszukanego użytkownika(ów)
3. sprawdza czy dla danego użytownika(ów) przekroczono próg
4. wysyła powiadomienie
darekc
2.10.2006, 10:17:42
podobną opcję juz rozmyślałem, tylko co z obciążeniem serwera i czasem oczekiwania użytkownika który dodał towar, gdy np. daną kategorię subskrybuje 10000 użytkowników?
Xathloc
2.10.2006, 10:31:32
IMHO w przypadku dodawania produktów czas oczekiwania nie jest aż tak krytyczny. Poza tym obydwa powyższe zapytania są proste i nie obciążają przesadnie serwera.
darekc
2.10.2006, 13:27:11
Nie chodzi mi o zapytania

tylko o wysłanie mail'i do 10000 użytkowników...
Xathloc
2.10.2006, 13:35:47
Hehe, nieporozumienie

Ale nie da sie wysłać powiadomienia nie wysyłając go. Można wygenerować skrypt dla crona, zapisać do pliku i kazać uruchomić się za kilka sekund. Wtedy cała operacja wykona się w tle.
darekc
4.10.2006, 20:18:16
Dzięki za pomoc, coś jeszcze pomyśle i może coś z tego będzie
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.