Я разработал расширение Chrome, которое просматривает приблизительно 1500-2000 страниц, чтобы собирать информацию с веб-сайта и нажимать на мой собственный сервер. Я использую расширение Chrome, учитывая требования, которые намного проще настроить, чем создавать и анализировать на стороне сервера.Хром, заканчивающийся память
Расширение используется только для внутренних целей, и мы запускаем эту работу, используя chrome.alarm API, чтобы работать в 3 часа ночи каждый день. Этот сигнал тревоги, когда триггеры всплывает, открывает новую вкладку и проходит через 1500-2000 страниц. Проблема в том, что утром мы видим SNAP dialogue после того, как продление продолжилось около 1500 страниц (приблизительно 3/4). Я предполагаю, что это связано с тем, что спрос на Chrome, размещенный на Chrome, поддерживает такую необычно большую историю?
Мой вопрос в том, что было бы лучшим способом смягчить это? Предположительно, убийство вкладки и повторное открытие (после x количество страниц) будут работать, но это замедлит подачу и потребует довольно много повторного факторинга кода. Есть ли способ заставить Chrome сбросить историю и сделать это свободной памятью в ближайшей сессии?
Чтобы добавить некоторый контекст, я запускаю это на дополнительной небольшой виртуальной машине с 1 ГБ памяти. Я ценю, что я мог бы модернизировать виртуальную машину, но на самом деле просто откладывает проблему.
На каждом цикле страницы я использую только 8 LocalStorage переменные, которые переписываются каждый раз. Переменные хранят очень короткие пары ключей имени, поэтому объем памяти здесь будет очень небольшим. Я вполне уверен, что это накопленная история - это проблема. Представьте, что вы нажимаете кнопку «назад» 1500 раз, чтобы вытащить каждую историческую страницу из памяти. Я думаю, что я собираюсь перенастроить расширение, чтобы открыть новую вкладку и закрыть старую каждую n-ю страницу. Спасибо за указание unlimitedStorage, это новый на меня! – QFDev
Это может сработать. Модифицировал мой ответ другим предложением. –
Спасибо, я дам это! – QFDev