Как вы определяете приемлемое время отклика для запросов DB App Engine?

StackOverflow https://stackoverflow.com/questions/2602527

Вопрос

Согласно с Это обсуждение устройства Google App на Hacker News,

Запрос DB (READ) занимает более 100 мс на хранилище данных. Это безумный и непригодны для использования около 90% приложений.

Как вы определяете, что является приемлемым временем отклика для запроса с чтением DB?

Я использовал приложение, не замечая любые проблемы с отзывчивостью БД. Но, с другой стороны, я не уверен, что даже знал, что искать в этом отношении :)

Это было полезно?

Решение

Плакат не прав. DataStore Get Операции намного быстрее - около 15-20 мс каждый, в настоящее время. Хранилище данных запрос Операции могут быть медленнее, потому что они намного больше участвуют и возвращают больше данных, но они все еще завершены в откуда от 30 до 100 мс для типичного запроса. Другие плакаты вполне обращались, независимо от того, является ли это «приемлемым» или нет.

Другие советы

Вы можете точно измерить, насколько каждый RPC вызов (хранилище данных или иначе) принимает, благодаря Guido Van Rossum's Appstats. Относительно новый компонент (это часть стандартного SDK с 1.3.1). Видеть здесь для большего. 100 миллисекундов в порядке для большинства хорошо разработанных приложений - если вам нужно сделать два или три запроса для обслуживания страницы, вы все еще можете служить менее чем за полсюда, даже если есть много обработки и рендеринга. потертый. Кроме того, вы можете использовать memcache уменьшить многие из этих задержек и т. Д.

Что вы подразумеваете под приемлемым? Какое приложение вы пишете? Приемлемое означает разные вещи для разных доменов / приложений / людей. Во-первых, вы должны решить, как быстро вы хотите ваше приложение ответить на запрос. Давайте выберем 1 секунду, просто ради аргумента. Теперь, сколько запросов БД вам нужно сделать, чтобы выполнить этот запрос? Скажем, 5. Давайте также будем говорить, что у нас также есть 400 мс. Хорошо, так что 5 читает раз 100 мс каждый, плюс 400 мс других вещей. Всего 900 мс, что меньше нашей цели в 1 секунду. Идеально! 100 мс - приемлемая скорость чтения. На самом деле, 120 мс все равно будет приемлемым, просто едва.

Теперь давайте обобщем:

numberOfReads * readTime + otherStuffTime = TotalTime

Заполните свои номера, и вы можете увидеть, что является приемлемым временем для вашей конкретной ситуации.

Если вы не замечали никаких проблем, то это по определению приемлемое время отклика. Единственный вопрос в том, как долго ваши пользователи рады ждать.

«Приемлемое время отклика для запроса на чтение БД» полностью зависит от вашего приложения и ваших пользователей.

Если сетевой результат заключается в том, что ваш сайт работает достаточно быстро, чтобы удовлетворить вас и ваших пользователей, то время медленного ответа услуг, предоставляемых Google в их AppEngine, являются приемлемыми.

Теперь, выглядя более глубоко по этой конкретной проблеме, звучит так, как будто мы говорим о Gets's. Здесь Являются ли цифры для задержки, и она смотрит на меня, что средняя задержка ближе к 50 мс, чем 100 мс тогда 100. Я не говорю, что это хорошо, но я не думаю, что это точно, чтобы сказать 100 мс.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top