База данных Firebase программно проверяет размер загружаемых данных - PullRequest
0 голосов
/ 12 октября 2018

Я использую базу данных Firebase для своих проектов

Я хотел бы создать интерфейс для контроля размера данных каждого действия, когда каждый раз, когда я читаю его из БД.

Я пошелчерез документацию Firebase и стекопотока, но не похоже, что есть какое-либо связанное решение.

Есть ли способ рассчитать размер данных?Добиться этого с помощью Firebase SDK или JS на стороне клиента также приемлемо для меня.Это не обязательно должно совпадать на 100% с тем, как firebase вычисляет пропускную способность или размер, но как и 80% совпадение также приемлемо.

Спасибо.

1 Ответ

0 голосов
/ 12 октября 2018

Рассчитать размер хранилища загруженных данных довольно просто: просто JSON.stringify загруженных данных.Так что-то вроде этого:

ref.once("value", function(snapshot) {
  console.log(JSON.stringify(snapshot.val()).length);
});

Это пропускает сторону самой внешней рамки, поэтому вы захотите добавить snap.key().length и '"":{}'.length для всего остального.

Дляпропускная способность ситуация, к сожалению, не так просто.На самом деле половина из этого так же проста, поскольку пропускная способность HTTP довольно близка к размеру хранилища JSON, который я показал выше.Вы также можете легко проверить это на вкладке Network вашего браузера, где вы можете увидеть точные кадры Web Socket, которые отправляются и принимаются.

Но хитрый момент связан с тем, что весь трафик идет по HTTP S , и согласование SSL-соединения зависит от соединения, а не от количества байтов.Современные браузеры неплохо поддерживают открытое SSL-соединение и используют его повторно, но этот фактор все еще трудно предсказать, и он очень мало зависит от вашего кода (или кода Firebase).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...