Wpis z mikrobloga

Powiedzcie mi, a raczej doradźcie. Chcę zrobić sobie czata na stronę internetową w PHP i JS. Mam jednak taki problem, że nie wiem jak zapisywać wiadomości wysłane do serwera, które potem będą "requestowane" przez drugą stronę komunikacji.
Moja pierwsza myśl to zapisywanie tych wiadomości w bazie danych, ale nie wydaje mi się to efektywne. Czy nie można jakoś umieszczać w pamięci danych, które będą widoczne pomiędzy zapytaniami, po stronie backendowej? Coś mi się nasuwa memcached ale nie wiem czy to dobra droga. Jakieś wskazówki?

#programowanie #php #javascript #webdev
  • 8
@horus666: to pytanie jest banalne że aż strach

1. przedwczesna optymalizacja, zakładasz że db nie obsłuży loadu
2. memcached nie działa tylko w pamięci, jest wersja semi-persistent albo np redis czy inne memory storage
3. po co pisać to samemu skoro są odpowiednie bilbioteki
4. co z end2end encryption czy coś
@horus666: Do jakiejś bazy musi trafić bo co jak zrestartujesz serwer(y)?
Przy requescie robisz wrzut do bazy + wysłanie do wszystkich klientów po websocketach (tak najsensowniej w łopatologiczny sposób). Jak klient przeładuje apke webową to requestuje ostatnie X wiadomosci z backendu.
Czy nie można jakoś umieszczać w pamięci danych, które będą widoczne pomiędzy zapytaniami, po stronie backendowej?


@horus666: może po prostu trzymaj bazę danych w pamięci
@horus666: dam ci radę, jeżeli planujesz sobie jakiś projekt i myślisz jakie zasoby będziesz potrzebować to zrób najpierw research w sieci jak inni robią takie rzeczy, czytasz jakie podejmują decyzje i z jakich powodów a nie odkrywasz koła na nowo, większość problemów w IT jest już rozwiązanych, wystarczy przeczytać w jaki sposób:

Więc otwierasz google i wpisujesz:

site:github.com writing a simple chat app


I znajdziesz całą masę repo gdzie ktoś już