#c# #unity3d #firebase-realtime-database
# #c# #unity3d #firebase-база данных в реальном времени
Вопрос:
у меня проблема с использованием firebase в Unity.
Мой json такой
"-MOGcdnpalVOmnxvO8ma" : {
"imdbID" : "tt12571792",
"imdb_moviename" : "A Queen Is Born",
"like" : 0,
"myDbID" : 39,
"poster" : "N/A",
"title" : "A Queen Is Born",
"type" : "series",
"unlike" : 0,
"year" : "2020–"
},
И правила для этого json
{
"rules": {
"Movie": {
".read": true,
".write": true,
".indexOn": ["like"]
}
}
}
В firebase есть записи 4k.
я вызываю этот метод из unity, но результат приходит через 2 минуты.
public GetMovieList() {
if (movieDatabase==null){
movieDatabase = FirebaseDatabase.DefaultInstance.GetReference("Movie");
}
List<Movie> movies = new List<Movie>();
movieDatabase.OrderByChild("like").LimitToLast(10).GetValueAsync().ContinueWith(task =>
{
if (task.IsFaulted)
{
Debug.Log(" Task Fail");
}
if (task.IsCompleted) {
Debug.Log("Task OK");
DataSnapshot snapshot = task.Resu<
foreach (DataSnapshot movierec in snapshot.Children)
{
Movie m = MovieParse(snapshot, movierec);
movies.Add(m);
}
}
});
}
Комментарии:
1. В API нет ничего, что могло бы повлиять на эту производительность. Но если вы впервые взаимодействуете с базой данных, возможно, вы смотрите на время, необходимое для установления начального соединения. Загружаются ли данные (намного) быстрее при повторной попытке?
2. теперь он работает нормально. я думаю, что первое взаимодействие было медленным, как вы сказали. Спасибо большое за помощь
Ответ №1:
В API нет ничего, что могло бы повлиять на эту производительность.
Но если вы впервые взаимодействуете с базой данных, возможно, вы смотрите на время, необходимое для установления начального соединения. Если это так, последующие загрузки должны быть намного быстрее.
В любом случае, возможно, стоит проверить соединение вашей системы с базой данных (обычно https://<yourprojectname>.firbaseio.com/
) с помощью такого инструмента, как tracert
.