При воспроизведении flash видео постоянные подвисания. Подвисания так же наблюдаются даже при простой печати текста(в том числе и этого сообщения). Камень у меня приличный и я озадачился. Входе танцев было установлено, что в этот момент лиса обращается к винту, а именно к файлу webappsstore.sqlite внутри профиля пользователя. Так же было установлено, что виной тому открытая вкладка вконтакта (проверял на вкаладке профиля/поиска аудио/поиска видео). В связи с этим напрашивается вопрос что за ... и как с этим бороться? Вконтакт используется только для видео/аудио, если это имеет какое-то знаечение.
1d2592da430d71fe1449a338761195f8.jpg
c55c45e9fa1e1ccc8bb6fc5cc5d02e0f.jpg

Пока искал решение проблемы наткнулся на несколько сайтов где очень рекомендовали дефрагментировать файлы баз данных находящихся в мозилле, в том числе и упомянутый выше. Может ли это быть как-то связано и действительно ли необходимо/актуально(статьи не самые свежие) это делать? Влияет ли это на производительность _после_ загрузки?

DarkMasterW пишет

В связи с этим напрашивается вопрос что за ... и как с этим бороться?

http://kb.mozillazine.org/Webappsstore.sqlite:

webappsstore.sqlite contains DOM Storage

DOM Storage is the name given to the set of storage-related features first introduced in the Web Applications 1.0 specification, and now split off into its own W3C Web Storage specification. DOM Storage is designed to provide a larger, securer, and easier-to-use alternative to storing information in cookies.

В принципе, этот файл можно просто удалить - при необходимости FF создаст его заново. У описанной проблемы могут быть 2 причины:
1) долгое однократное обращение - возможно, побились индексы внутри sqlite-базы, и движок sqlite выбирает неоптимальные планы исполнения. Можно провести переиндескацию базы и обновление индексов, но проще и быстрее - просто убить файл. У вас потеряются сохраненные данные некоторых web applications, но, я думаю, вряд ли там сохранено что-то мегакритичное, и фатально невосстановимое.
2) много частых обращений к базе - если это так, то это уже косяк программистов сайта.

25-12-2011 08:22:20
Упс... пардон, не заметил - у меня адблок заблокировал скриншоты. Судя по первому скриншоту, имеет место быть пункт 2.

Web Applications это вообще что? Что к ним относится? Прежде чем убивать хотелось бы все же понять, что именно и решить насколько это будет критично.

Возможно ли как-то искусственно заблокировать подобную активность? Пока приходит в голову только рубануть права доступа к файлу. Чем это может грозить?

DarkMasterW
Web application
В общем случае этим web application может быть та же страница вконтакта, сделанная на базе соответствующих фреймворков и технологий (см., например, http://www.w3.org/TR/tr-groups-all#tr_W … king_Group). Термин достаточно общий, и поэтому расплывчатый; на пальцах - "нечто, работающее в браузере, и взаимодействующее с ресурсами компьютера клиента".

DarkMasterW пишет

Пока приходит в голову только рубануть права доступа к файлу. Чем это может грозить?

Понятия не имею, это зависит от самого приложения. Может быть чревато неработоспособностью приложения в целом, может быть чревато только несохранением данных приложения - как уж там его написали. Сделайте бэкап профиля, и попробуйте.

Потому и спрашиваю, что описания настолько расплывчатые, что вынести что-то полезное и конкретное просто не возможно. Полностью обрезал права доступа - эффекта не дало. Видимо лагало из-за самого факта огромного количества обращений, создания файлов и их удаления(wal и journal). Удалил нафиг этот файл весом 6,5 метров, лаги прекратились. Стал смотреть что произошло... А произошло чудо... Обращений к этому файлу вообще не стало, он даже не был создан заного. Лагов нет. Появились переодические обращения к кукам и sessinstore.js, но интенсивность относительно слабая. Цель достигнута, а вот о причинах остается только гадать. Если виной всему был сайт, то почему он прекратил активность? - не сходится. Видать файлик все же был кривой.

DarkMasterW пишет

Если виной всему был сайт, то почему он прекратил активность? - не сходится.

Возможно (тут уже остается только гадать) сайт сначала пытался писать в webappsstore.sqlite до успешного завершения записи, попытки оканчивались ошибкой, и он пытался снова что-то записать. Не найдя webappsstore.sqlite, сайт стал что-то записывать в куки (webappsstore.sqlite - альтернатива хранению информации в куках). Успешно записал, и успокоился.

25-12-2011 10:13:54
Учитывая, что проблема была от страницы вконтакта, можно предположить, что попытки записи в webappstore исходили от flash player: http://www.macromedia.com/support/docum … elp02.html (в тексте по ссылке описано, как можно регулировать запись данных в local storage флэш-плейером). Ну, и кроме того, есть вот такая настройка: dom.storage.enabled - её выставление в false, по идее, тоже должно было решить проблему. Но, раз уж проблема решена, будем ждать, когда аналогичное всплывет еще у кого-то.

Хотел создать ещё одну тему вначале, но воспользовался поиском, и хорошо  что воспользовался.
Меня также беспокоит частое обращение, а именно операция записи в файл webappsstore.sqlite.
Вначале опишу результаты своих наблюдений, потом все "материалы".

Итак, собираясь покупать SSD диск, я обеспокоился оптимизацией программного окружения. Из всех программ я выявил несколько, которые активно ведут _запись_ на диск. Некоторые писали лог, в этих программах я его отключил т.к. он мне не был нужен, в некоторых не было опции отключения записи лога - им я нашел замену. Одной из программ оказался Firefox (v19, на текущий момент). По моим наблюдениям, на моей системе он с частотой в 4-10 секунд пишет в файл webappsstore.sqlite примерно 43Кб. Что вроде бы как не много, но я частенько компьютер оставляю включенным и за ночь(день) набегает до 1.2Гб, что не радует. Ладно бы если эти данные писались более крупными порциями, ведь SSD диску приходится ради 43Кб перезаписывать блоки флэш-памяти по 512Кб.

В общем считаю ситуацию не очень хорошей для SSD диска.

Мое видение решения проблемы? - производить запись по прошествии времени таймера (например 1 минута, или больше).

И да, у меня тоже активное обращение было замечено когда открыта вкладка с vk.com

Прикладываю свои "измерения"

скрытый текст
1748389.jpg

Может кто-нибудь сможет отправить это предложение к багзиллу мозилловцам.

ALLIGATOR_
Не накручивайте себе нервы, помимо [firefox], на диск пишет ещё куча программ и ничего страшного для SSD в этом нет. Почитайте Сколько проживет ваш SSD? и живите спокойно. :music:

Zaycoff пишет

диск пишет ещё куча программ

ProcMon показывает, что не так уж их и много на моей системе. Видимо буферизируют запись в ОЗУ, либо за них это делает ОС. А вот FF принудительно сбрасывает буферизированные данные на диск с довольно большой частотой.
Конечно же я имею ввиду режим, когда за компьютером никто не сидит, т.е. активность приложений без какого-либо воздействия пользователя.

Zaycoff пишет

страшного для SSD в этом нет

Касательно этого я с Вами почти согласен, читал я уже этот материал который Вы привели по-ссылке, но только сейчас я задумался, что запись 1Гб единоразово и тогоже гигабайта, но разбитого на части по 50Кб совершенно по-разному влияют на долговечность ячеек флеш-памяти.
Т.к. в первом случае перезапись произойдёт 1024Мб/512Кб = 2048 раз, а во втором случае 1024Мб/50Кб ~= 20480 т.е. в 10 раз больше

Конечно, я не в курсе как там прошивка контроллера диска это обрабатывает, к тому же вроде бы? на самом SSD-диске есть небольшой RAM-буфер, но даже успокаивая себя такими рассуждениями хочется всё-таки чтобы с частотой записи что-то сделали, поднять бы её до раза в минуту или в 30 секунд.

ALLIGATOR_

FF принудительно сбрасывает буферизированные данные на диск с довольно большой частотой.

Откройте страницу about:config и установите параметры dom.storage.enabled (упоминался выше) и browser.cache.disk.enable (дисковый кеш) в false (отключить). Правда, без дискового кеша Вы лишитесь удовольствия просматривать страницы, когда интернет-соединение отсутствует. Второй параметр вряд ли связан с webappsstore.sqlite, но имеет отношение к использованию диска.

Кажется без DOM storage некоторые сайты отвалятся...

Пандёнок пишет

Откройте страницу about:config и установите параметры

Пандёнок пишет

в false (отключить)

Пандёнок пишет

Вы лишитесь удовольствия

Это не дело, какой-то костыль, сами понимаете.

В целом, я уже мысленно смирился, вроде как проживёт SSD-диск достаточное время, но всё-равно я считаю, что это поведение FF не самое оптимальное и здесь есть куда оптимизировать. Как я уже говорил выше, на мой взгляд не мешало бы увеличить время синхронизации базы sqlite которая в памяти с той, что на диске хотя бы до 30-60 секунд или больше.(сейчас 1-10сек)

Ещё раз обращаюсь к форумчанам, никто не поможет отправить этот вопрос на рассмотрение разработчикам ФФ в багзиллу? Или, возможно, будет совсем замечательно если кто-нибудь сделает это за меня, у кого опыта больше или кто просто часто этим занимается.

Update1
Нашел в багзилле уже есть такой баг, только там вопрос поставлен несколько иным образом, постараюсь вклиниться в обсуждение.
https://bugzilla.mozilla.org/show_bug.cgi?id=792870
https://bugzilla.mozilla.org/show_bug.cgi?id=627635

ALLIGATOR_, есть сразу три решения:
1. Использовать диск, а не хранить его.
2. Отключить dom.storage.enabled (по этой теме только его), а те сайты, которые открылись неправильно (это теория, почти всё работает правильно), смотреть в другом браузере — всё равно такое бывает.
3. Использовать другой браузер, благо их много. Из современных и хороших назову [seamonkey] [opera] [chrome] и [chromium] и удачные сборки на основе [chromium]: Яндекс.Браузер, „браузер «Интернет»”.

Дада. Хромиум на винт особенно "не пишет"

Tiger.711
У ALLIGATOR_ программа для контроля есть, так что пусть сравнит. Догадываюсь, что [opera] с её умолчальными настройками кеширования тоже „не пишет” только в моих кавычках. И оба — в сравнении с [firefox]. Впрочем, это только догадки.

Кстати, да.

ALLIGATOR_
Попробуйте разные браузеры, сравните. Напишите статью. На сегодняшний день это актуально, так что читаемость и цитируемость у статьи будет на уровне.

Tiger.711, я бывшый большой фанат Oper'ы, всё мне в ней нравится, кроме одного - не нравится работа с табами когда их очень много(овер 100), ни один из вариантов работы с табами меня не зацепил в опере, пользовался ею более 5 лет и был крайне ярым фанатом. В ФФ с табами всё нравится, но не нравится работа с букмарками, а именно в опере был полнотекстовый поиск по всем полям сохранённого букмарка, а вот в ФФ такого нету, там только по нескольким полям(названию и урлу на сколько я помню) и метки\теги, этого очень не хватает.
В общем к чему я это, я не хочу распылятся ещё и на другие браузеры, мне нужен один, но чтобы он подходил мне по всем требованиям.

Пандёнок пишет

У ALLIGATOR_ программа для контроля есть, так что пусть сравнит.

Не думаю, что это секрет, но это известные утилиты от Руссиновича: ProcMon и ProcessExplorer

Пандёнок пишет

ALLIGATOR_, есть сразу три решения:

2 и 3 ну опять же какие-то костыли, мне они зачем, DOMStrorage это вообще же на сколько я понимаю фича HTML5, а я люблю прогресс и не собираюсь себя лишать фичастостей, а к первому варианту я уже и сам пришел, т.к. пока иного пути нету.

Опять же хочу обратить ваше внимание на то, что я преследую цель уменьшить кол-во операций записи за единицу времени в то время, когда браузер не используется. Т.е. я его свернул и занимаюсь другими делами или когда он остаётся открытым на ночь или на день когда меня нет дома например. Понятное дело, что работа с диском во время сёрфинга просто не идёт ни в какое сравнение с работой в состоянии "stand-by". Напомню, что за ночь ФФ у меня записывает 1,5Гб данных(тупо перезаписывает один и тот же файл) мелкими порциями. И моя цель уменьшить кол-во перезаписей, увеличив время сброса на диск БД. Надеюсь я ясно выражаюсь, потому-что у меня ощущение, что вы не можете понять из-за чего именно я негодую.

ALLIGATOR_ пишет

свернул и занимаюсь другими делами или когда он остаётся открытым на ночь или на день

А кнопка «Сохранить и выйти» — не вариант? Или «при запуске показать вкладки и окна, открытые в прошлый раз»? Понятно, что для Вас это не станет открытием, но для меня открытием стало, что оставить браузер откытым на ночь просто так — это в порядке вещей. Тем более что для закачки больших файлов использую FlashGot с Download Master.

ALLIGATOR_ пишет

у меня ощущение, что вы не можете понять из-за чего именно я негодую.

Понимаю вполне, но не знаю, как устранить без последствий даже в теории, так как у dom.storage.enabled исключений нет. Всё же советую отключить его, а пока помониторю свой [firefox] 3.6.

Пандёнок пишет

Сохранить и выйти

Вариант, но мне почему-то не нравится так делать.

Пандёнок пишет

но не знаю, как устранить без последствий даже в теории

Ну дык я же и вещаю, что достаточно с меньшей частотой писать на диск. Пускай пишет сколько влезет в память, а раз в минуту сбрасывает на диск. На текущий момент просто каждые 1-10 секунд происходит запись на диск. (обязательно условие, при котором это происходит - открытая вкладка vk.com в фоне или на переднем плане - не важно).

В общем я уже решил, что напишу в багзиллу, только вот не могу пока внятно, кратко и понятно сформулировать что я хочу на английском языке.

А если выгружать вкладку вконтакта?

Сейчас помониторил [firefox] Process Monitor-ом, что-то он у меня ничего никуда не пишет (вообще), сначала подумал, что это я косой, специально поменял настройки и сохранил ручками страничку - в логах пошла запись в конфиги и в файл сохранения страницы, а потом снова тишина, глухо как в танке...
Правда у меня кэш в оперативке висит...
about:config
browser.cache.disk.enable => false
browser.cache.memory.enable => true

Zaycoff
А вкладка фконтакта висит?

Tiger.711 пишет

А если выгружать вкладку вконтакта?

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

Zaycoff пишет

Правда у меня кэш в оперативке висит...
about:config
browser.cache.disk.enable => false
browser.cache.memory.enable => true

Настройки аналагичны. У Вас была открыта вкладка vk.com? Вы были залогинены под своей учёткой на vk.com?
Тоже сейчас открыл ProcMon, отфильтровал по firefox.exe и "FlushBuffersFile"(операция сброса на диск кэша записи) и всё осталось как и было, каждые 2-5 секунд происходит обращение на запись к диску к файлам webappsstore.sqlite и webappsstore.sqlite-journal

Bug 727409 - Make Firefox SSD friendly [meta]

Tiger.711 пишет

А вкладка фконтакта висит?

Боже упаси! Я там даже не зареган... >_>

ALLIGATOR_ пишет

когда я вижу как можно решить этот вопрос иначе, глобально, по-отношению ко всем сайтам

Ставим TU и настраиваем его выгружать фоновые вкладки через час.
Или убираем вкладку фконтахтега в  отдельную группу панорамы, чтобы лиса выгружала её средствами движка.

Повёл эксперимент:
1. Закрыл ФФ, открыл, дождался пока вся сессия подгрузится(вкладки, интерфейс отрисуется, перестанет трещать HDD)
2. Запустил ProcMon и настроил фильтр на "firefox.exe" и Operation - "FlushBuffersFile"
3. Помониторил - ничего особо не пишется
4. Поставил мониторинг на паузу, чтобы при загрузки веб-контента не засорять лог.
5. Открыл google.ru, дождался загрузки, запустил мониторинг
6. Помониторил - тоже никакой особой активности ФФ не проявил
7. Аналогичная ситуация при загрузке ya.ru
8. По аналогичному алгоритму загрузил my.mail.ru
9. Началась активная запись в webappsstore.sqlite

Т.е. многие веб 3.0 сервисы, как минимум 2 :) , используют все доступные прелести HTML5. Соответственно в свете этого отключать эту часть браузера не вариант, не дело, так не пойдёт.

Sid пишет

Bug 727409 - Make Firefox SSD friendly [meta]

Спасибо за ссылку

ALLIGATOR_
Либо попробуйте отключить Dom Storage (от этого никто не умирал), либо заведите привычку закрывать хотя бы вкладку Вконтакте. Кстати, можете попросить на форуме написать для Вас кнопку для Custom Buttons «закрыть ВКонтакте и свернуть окно».
А вообще лично для себя я считал дурной привычкой открывать больше десятка вкладок одновременно. На этот случай у меня была для себя поговорка-напоминалка: «весь интернет не откроешь».

ALLIGATOR_ пишет

Ну дык я же и вещаю, что достаточно с меньшей частотой писать на диск.

Это надо вещать разработчикам ВКонтакте.

многие веб 3.0 сервисы, как минимум 2 :) , используют все доступные прелести HTML5. Соответственно в свете этого отключать эту часть браузера не вариант

Вариант. Попробуйте отключить — вполне возможно, что без этого прелесть обойдётся, как обходится сайт без дискового кеша вообще. Включить обратно ведь столь же просто. Дальнейшее обсуждение без элементарного эксперимента считаю флудом.
Разве что вспомнить программу RAMDisk, с помощью которой можно создать виртуальный винчестер и таким образом заставить [firefox] использовать оперативную память вместо диска.

Зарегался во вконтактике =)
В общем запись ведёт отдельный фрейм.
Его можно заблокировать при помощи Adblock Plus примерно так:

Выделить код

Код:

|https://vk.com/notifier.php?act=storage_frame&from=vk.com&*#queue_connection_events_queue*

Правда не знаю как это скажется на работоспособности вконтактика =)

Tiger.711 пишет

Ставим TU и настраиваем его выгружать фоновые вкладки через час.

Вот вроде как да, нормальное решение, и даже оперативную память будет освобождать :) но вот мне всё равно уже теперь хочется чтобы было по-моему :)

Tiger.711 пишет

убираем вкладку фконтахтега в  отдельную группу панорамы, чтобы лиса выгружала её средствами движка.

Пожалуйста, поподробнее. Вы имеете ввиду "Группы вкладок"? И ещё хочу почитать про средства движка позволяющие выгружать вкладки, я не в курсе.

Zaycoff пишет

Правда не знаю как это скажется на работоспособности вконтактика =)

Судя по названию ссылки потеряются уведомления о лайках или нарушится работа мессенджера (информацию не проверял, ничего не утверждаю)

ALLIGATOR_
Браузер выгружает неактивные группы панорамы. Да, это группы вкладок.

Выглядит так:
h_1362920496_7243409_b29665d578.png

Спасибо вам большое за участие, помощь, решения. Варианты были предложены хорошие и даже полностью решающие всё на что я жаловался.
Считаю что какими бы хорошими не были варианты, единственным правильным решением для SSD-friendly поведения FF считаю уменьшение частоты операций записи на диск из коробки, силами самого приложения. Это моя точка зрения.
Пожалуйста, не дублируйте варианты обходных решений, я их прекрасно помню и к тому же тема пока всего на 2-х листах.

ALLIGATOR_ пишет

тема пока всего на 2-х листах.

Проблема что ли? Щас набьём посты!

Замечание п.3.7
Sergeys