В последнее время было довольно много случаев, когда механизм приложений работал медленнее.В какой-то степени это понятно с архитектурой их облачной платформы.Я не говорю о новых экземплярах серверов - просто запросы к теплым серверам.Я также имею в виду процессор, а не API хранилища данных, но меня это тоже удивляет.
Похоже, что в эти медленные периоды я получаю намного больше желтых предупреждений о своих запросах - говоря, что я используюмного процессора.Конечно, они требуют больше времени для завершения в этот период.Что меня беспокоит, так это то, что в эти медленные периоды мой оплачиваемый ЦП, кажется, работает с повышением.
Итак, чтобы быть ясным - когда движок приложения работает быстро, запрос может завершиться за 100 мс.В медленный период для одного и того же запроса может потребоваться более 1 с.Тот же URI, то же кэширование, тот же путь обработки, то же хранилище данных, те же индексы - намного больше ЦП.Желтые предупреждения, насколько я понимаю, относятся к оплачиваемому использованию ЦП, и их гораздо больше, когда движок приложения работает медленнее.
Кажется, это создает странную ситуацию, когда мое приложение стоит дороже, когдапроизводительность движка приложения хуже.Это означает, что Google зарабатывает больше денег, чем хуже работает платформа (вплоть до того момента, когда она терпит неудачу или клиенты уходят).Может быть, я все неправильно понял, и это не сработало - но если это сработает так, то, как клиент, давление и противовесы там все неправильные.Это не говорит о каких-либо неправильных действиях со стороны Google - просто то, что отношения между этими двумя вещами кажутся неправильными.
Кажется, что алгоритм Google выглядит примерно так: «Если я отдаю задание на обработкуCPU и запускаю мои часы, затем останавливаю их, когда работа возвращается, я получаю оплачиваемую цифру CPU ».то есть он не измеряет работу процессора вообще.Конечно, это время должно быть разделено на число одновременно выполняемых заданий обработки плюс некоторое дополнительное, чтобы покрыть дополнительное переключение контекста.Я уверен, что это трудно измерить - возможно, в этом причина.
Полагаю, вы могли бы поспорить, что справедливо, что вы платите больше, когда механизм приложений пользуется высоким спросом, но это делает бюджетирование практически невозможным -вы не можете генерировать статистику, например, «100 пользователей стоят мне 1 доллар в день», потому что это может измениться по целому ряду причин, включая механизм приложений, который включает больше клиентов, чем реально может выдержать инфраструктура.Если Google переподписывает движок приложений, то все клиенты платят больше - это еще одно отношение, которое не звучит правильно.Несомненно, расходы Google должны понизиться на * , поскольку они набирают больше клиентов, и эти клиенты используют больше ресурсов - в зависимости от эффекта масштаба.
Стоит ли ожидать, что два идентичных запроса в моем приложении будут стоить мне примерноодно и то же количество каждый раз, когда они запускаются - независимо от того, сколько движок приложения настенного времени требуется, чтобы фактически завершить их?Я неправильно понял, как это работает?Если нет, есть ли причина, по которой я не должен беспокоиться об этом в долгосрочной перспективе?Есть ли документация, которая проясняет ситуацию?Приветствия,
Колин