![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 83 Pomógł: 1 Dołączył: 25.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam taki problem "teoretyczny" (IMG:style_emoticons/default/smile.gif) z używaniem funkcji mail() (lub jakiejś gotowej klasy typu phpmailer). Prowadzę pewien portal społecznościowy i chcę dodać funkcję wysyłania e-maila do odbiorcy kiedy ten jest offline i dostał jakąś wiadomość na skrzynkę.
Boje się jednak, że takie "ciągłe" wysyłanie emaili (w końcu użytkownicy cały czas przesyłają sobie różne wiadomości, oczka, prezenty itd) zbytnio obciąży serwer. Zastanawiam się czy są jakieś inne metody powiadomień emailowych bez mocnego obciążenia serwera. Wymyśliłem sobie taki sposób: w momencie gdy użytkownik prześlę innemu wiadomość w bazie zapisywana jest jakaś tam instrukcja "napisz wiadomosc do... o tym i o tym...", następnie z bazą danych połączy się inny serwer (np. pierwszy dobry dedyk, a drugi jakiś tani dedyk) i te emaile będą wysyłane z tego drugiego serwera, a następnie usuwanie odpowiedniego wpisu z DB (albo po prostu pobieranie DB, czyszczenie, wysyłanie). Możecie coś doradzić? (IMG:style_emoticons/default/smile.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 83 Pomógł: 1 Dołączył: 25.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
No, to właśnie jest społęcznościówka i ludzie na prawdę wysyłają takie pierdoły, że szok... cachowanie, optymalizacja sql - o to oczywiście też staram się dbać. Chyba nie pozostaje mi nic innego jak uruchomienie opcji powiadomień e-mailowych i sprawdzenie na przestrzeni kilku dni jak będzie wyglądało obciążenie... choć mimo wszystko, zrobię w ten sposób, że nowa wiadomość wysyłana do użytkownika offline będzie zapisywała się w bazie danych, a skrypt Corn będzie się wykonywał np. co 15 minut i nie wysyłał 100 emaili "masz wiadomosc..." tylko "masz 100 nowych wiadomości w swojej skrzynce", a jeżeli użytkownik sie zaloguje w przeciagu tych 15-min to baza bedzie czyszczona, zeby nie wysylac niepotrzebnej wiadomosci. Tak sobie wymyslilem (IMG:style_emoticons/default/cool.gif) (IMG:style_emoticons/default/tongue.gif)
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 9.10.2025 - 08:29 |