Google App Engine чрезмерное хранилище данных мелких операций
У моего сайта около 50 пользователей, и я получаю слишком много операций с небольшими хранилищами данных. Я активно использую memcaching, у меня не так много записей, и все же я получаю миллионы небольших операций с хранилищами данных. Appstats говорит, что стоимость равна 0, но реальная стоимость не равна 0. Я в основном знаю, где могут происходить операции с небольшими хранилищами данных.
Только ключевые операции: я делаю это, но я запоминаю его, пока данные не будут изменены. Кроме того, большинство моих операций только с ключом имеют предел =100 (это макс.), Поэтому для выполнения 12-минутных операций мне нужно было бы сделать 120000 вызовов (я предполагаю, что выборка 1 ключа - это 1 маленькая операция). Поскольку я получаю около 60-70 посещений в день, это кажется немного чрезмерным. Я просто не могу понять, что вызывает столько операций. Appstats не дает мне никакой подсказки.
Это приборная панель.
Это аппстаты.
2 ответа
Вы используете много counts
? Похоже, что это может быть проблемой, которая вызывает чрезмерное выполнение небольших операций с хранилищем данных.
У меня нет вашего кода, но в этом ответе есть несколько советов по оптимизации кода при возникновении этой проблемы.
Кроме того, взгляните на похожий вопрос - механизм приложений Google излишне выполняет операции с небольшими хранилищами данных для похожих ответов.
Я заметил, что этот старый вопрос еще не решен, поэтому, основываясь на вашей информации, вот еще одна потенциальная причина.
Запустив свой GAE SDK на очень свежем общедоступном экземпляре виртуальной машины Azure (xxx.cloudapp.net), я заметил, что много трафика ботов приходит, пытаясь найти общую CMS с открытым исходным кодом или страницу администратора корзины. Я считаю, что это связано с тем, что боты используют AXFR-запросы или брутфорс-обнаружение поддоменов.
Убедитесь, что вы блокируете любой нежелательный трафик ботов и не предоставляете им динамическую страницу, что больше сказывается на вашем хранилище данных.
Такое же условие также может быть вызвано мошенническим циклом запросов AJAX на каждой странице, которую запрашивают эти 50 пользователей.