Як прискорити функцію Smart Location Bar (Awesome Bar)?


6

Firefox Чудовий бар дійсно приголомшливо. Але, останнім часом я бачу, що вона стала повільною. При введенні деяких символів він навіть замерзає на кілька секунд (заморожує весь браузер).

Чому він сповільнюється? Чи є спосіб його прискорити?

(ОС Windows XP.)


Я не можу знайти посилання на нього зараз, але я пам'ятаю, як прочитав на одному з блогів Mozilla Devs, що вони шукали це.
Sam Hasler

Так, Firefox 3.7 повинен бути трохи швидше, коли вийде. mashable.com/2009/06/29/firefox- далі
Tomas Andrle

Які додатки ви встановили? У мене те ж саме питання на моєму робочому столі, і він навіть здається, що втрачають натискання клавіш послідовно. Мені цікаво, якщо це може бути пов'язано з певним доповненням.
Joe Holloway

Відповіді:


10

Ви можете ВАКУУМ бази даних SQLite, які Firefox використовує для зберігання своєї історії та інших даних. Пилосос оптимізує таблиці бази даних всередині файлів. Це прискорює роботу Firefox і економить місце на диску.

Щоб видалити файли баз даних Firefox:

  1. Знайдіть у вашій системі каталог даних профілю Firefox. У Windows Vista, це може бути десь подібне C:\Users\tom\AppData\Roaming\Mozilla\Firefox\Profiles\default.jqi\. Каталог містить файли з розширенням .sqlite, так що ви можете знайти їх за допомогою пошуку.

  2. Отримати утиліту командного рядка SQLite тут .

  3. Закрийте всі вікна Firefox. Відкрийте командний рядок у каталозі профілю.

  4. У Windows введіть команду for %i in (*.sqlite) do @echo VACUUM; | sqlite3 %i У Linux або Mac запустіть for i in *.sqlite; do echo "VACUUM;" | sqlite3 $i ; done

  5. Дефрагментуйте жорсткий диск.

Гугл хром фактично також використовує SQLite, за винятком того, що файли не дають розширення .sqlite. Ви все одно можете безпечно запустити таку ж команду для всіх файлів у каталозі профілю Chrome, і SQLite буде лише VACUUM файлів, які він розпізнає.


На Mac: ~/Library/Application\ Support/Firefox/Profiles/*.default/ (подивитися superuser.com/questions/3275/firefox-on-mac-slow-slow-slow/… )
Arjan

Чи існує будь-яка причина ВАКУУМ як у жирному, так і у верхньому регістрі?
Hello71

@ Hello71: ні. Я просто звик писати ключові слова SQL у верхньому регістрі для кращої читаності. Нижній регістр має добре працювати.
Tomas Andrle

2

Простіше встановити програму Вакуумні місця addon, що дозволяє дефрагментувати базу даних Places за допомогою натискання кнопки.

Ви раніше використовували команду:

Components.classes["@mozilla.org/browser/nav-history-service;1"].getService(Components.interfaces.nsPIPlacesDatabase).DBConnection.executeSimpleSQL("VACUUM");

у "Консолі помилок" для вакуумування бази даних, але я не впевнений, що він працює в Firefox 3.6.


1

Це тому, що у вас багато історій сторінок. Очищення історії кожного разу допомагає з цим.


6
Це не зменшує приголомшливості дивовижного бару.
Jeremy French

1

Ну дивовижний бар запитує вашу історію, закладки і останні терміни пошуку (з того ж бару), тому, можливо, у вас є багато даних там. Спробуйте очистити свою історію (починаючи з місяця назад, якщо ви хочете зберегти недавню історію) і спорожнення історії пошуку - 3.5 має корисний інструмент для цього (що може очистити до встановленої дати). Це повинно прискорити час запиту, якщо дані менше.


0

На Linux можна використовуйте tmpfs для монтування частини файлової системи в пам'яті . (Іронічно, звичайно, однією з найкращих можливостей SQLite є її здатність зберігати всю базу даних в пам'яті.)

Вікіпедія пропонує альтернатива для tmpfs для Windows, але це не входить в деталі, і він відчуває себе трохи hacky. YMMV.


0

Для мене це нормально працює:

cd ~/.mozilla/firefox/????????.default
echo "VACUUM;" | sqlite3 places.sqlite

Ідея полягає в VACUUMing, як це було запропоновано places.sqlite.


0

The Обслуговування місць розширення має інтерфейс, який дозволяє легко пилососити (оптимізувати) файли баз даних Firefox, що має сприяти прискоренню роботи Awesome Bar та іншого доступу до баз даних Firefox. Вона також має інші функції підтримки баз даних Firefox:

Дозволяє запускати завдання технічного обслуговування в базі даних, яка керує Місцями, закладками та модулем історії за Firefox.

Places Maintenance UI


0

Якщо у вас SQLite, ви можете запустити цю команду:

echo 'DELETE FROM moz_historyvisits
WHERE visit_date < strftime("%s", "now", "-5 month") * 1000000; VACUUM;' |
sqlite3 places.sqlite
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.