Gra Android online, jak komunikować się ze zdalną bazą danych

0

Jak to w grach online bywa dane powinny być na bieżąco aktualizowane. Obecnie realizuję to za pomocą retrofita, który wysyła żądania i metody handler.postDelayed() co sekundę lub pół. Jednak nie jest to chyba zbyt efektywny sposób bo to chyba przez to po paru sekundach aż dławi się mój internet xd i zaczyna lagować.

Pytanie więc jak można się wysyłać z Android zapytania do bazy danych tak, żeby nie obciążać tak internetu.

0

Problem jest gdzieś indziej. Aplikacja czy internet nie zwalniałyby, przez wysyłanie zapytania co pół sekundy, jeśli jest to robione poprawnie.

0

Nie wiem co i jak właściwie wysylasz :) Na początku skoro używasz Retrofita zapnij sobie:
https://github.com/square/okhttp/tree/master/okhttp-logging-interceptor

Dzięki temu będziesz widział w konsoli cały ruch/odpowiedzi itp. który przechodzi przez OkHttp (Retrofita)

0

Jeśli chcesz komunikować się na bieżąco z serwerem to pewnie lepszym rozwiązaniem będą sockety.

0
  1. Jakiego typu jest to gra? Jak bardzo jest dynamiczna? Jeśli jest to coś "real time" to użycie Retrofit (protokołu http) wydaje mi się złym wyborem.
  2. Ilu jest graczy w interakcji?
  3. Czy masz kontrolę nad serwerem, szczególnie nad jego API?
  4. Napisałeś, że odpytujesz serwer co sekundę, a poczekałeś najpierw na odpowiedź poprzedniego request-a? Jeśli nie to w przypadku ciężkich danych możesz zapchać łącze.

1 użytkowników online, w tym zalogowanych: 0, gości: 1