Wpis z mikrobloga

Jak w aplikacjach webowych lepiej zapisywać dane do bazy jeśli jest dużo małych operacji na #frontend ? Po każdej operacji, czy jakoś na koniec (np. przyciskiem)? Załóżmy, że mamy apkę typu excel online, gdzie user dużo miesza. Zapis po każdej operacji spowoduje dużo zapytań do bazy. Z kolei przy zapisie zbiorczym można łatwo stracić dane. Jest tu jakiś sprawdzony sposób? #webdev #javascript
  • 3
  • Odpowiedz
@paul8585: Nie, nie ma uniwersalnego sposobu ogólnie w większości wypadków jest rozwiązanie szyte na miarę. Ogólnie można podejść do problemu na kilka sposobów
-zapis na każdej akcji
-grupowanie akcji i wykonywanie zapisu jednym żądaniem co jakiś czas np. co 5 sekund wysyłamy wszystko czego user jeszcze nie wysłał
-zapis całości po fizycznym wciśnięciu jakiegoś buttona przez usera
-zapis akcji typu throttle/debounce np. po wciśnięciu dowolnego klawisza
dodatkowo popularne jest robienie warstwy
  • Odpowiedz
@lobo: @Jednorybek: Dzięki za odpowiedzi! Nie sprecyzowałem niestety, ale bardziej mi chodziło o wpływ obciążenie serwera przy wielu jednocześnie pracujących użytkownikach. Czy jedna, ale blokująca na dłużej operacja będzie lepsza dla serwera niż wiele mniejszych? Pewnie tak, tylko z kolei UX jest wkurzający. Debouncer faktycznie wydaje się złotym środkiem, a przynajmniej na świeżo.
  • Odpowiedz