Журнал LinuxFormat - перейти на главную

LXF72:Советы по ускорению

Материал из Linuxformat
(Различия между версиями)
Перейти к: навигация, поиск
м (викификация)
(викификация, оформление)
Строка 1: Строка 1:
 
:  Советы по ускорению
 
:  Советы по ускорению
  
==  72-я скорость ==
+
=  72-я скорость =
 
: Ваш дистрибутив работает очень медленно Ищите способы дополнительно увеличить его подвижность '''Майк Саундерс (Mike Saunders)''' потратил последние шесть лет на тонкую настройку производительности дистрибутивов Linux и все еще жаждет скорости… С дополнительными заметками ему помогли '''Грэхем Моррисон (Graham Morrison)''' и '''Марк Бэйн (Mark Bain)'''.
 
: Ваш дистрибутив работает очень медленно Ищите способы дополнительно увеличить его подвижность '''Майк Саундерс (Mike Saunders)''' потратил последние шесть лет на тонкую настройку производительности дистрибутивов Linux и все еще жаждет скорости… С дополнительными заметками ему помогли '''Грэхем Моррисон (Graham Morrison)''' и '''Марк Бэйн (Mark Bain)'''.
  
Строка 29: Строка 29:
  
  
=== ЗАГРУЗКА. Сократите задержку загрузчика ===
+
== ЗАГРУЗКА. Сократите задержку загрузчика ==
  
 
: '''ПО: LILO/GRUB • Сложность: Легко'''
 
: '''ПО: LILO/GRUB • Сложность: Легко'''
Строка 44: Строка 44:
 
пользователя root после редактирования. При следующей загрузке пауза будет значительно меньше.
 
пользователя root после редактирования. При следующей загрузке пауза будет значительно меньше.
  
=== ЗАГРУЗКА. Отключите ненужные службы ===
+
== ЗАГРУЗКА. Отключите ненужные службы ==
  
 
: '''ПО: — • Сложность: Средне'''
 
: '''ПО: — • Сложность: Средне'''
Строка 60: Строка 60:
 
('''На самом деле универсальным способом включения/выключения служб при загрузке является команда ''chkconfig'' выполняемая в консоли от имени суперпользователя. С ее синтаксисом легко разобраться набрав ''man chkconfig''''')
 
('''На самом деле универсальным способом включения/выключения служб при загрузке является команда ''chkconfig'' выполняемая в консоли от имени суперпользователя. С ее синтаксисом легко разобраться набрав ''man chkconfig''''')
  
==== Ник считает… ====
+
=== Ник считает… ===
  
 
«Всегда есть небольшой риск отключить что-то, что вам действительно нужно. Если вы сомневаетесь, оставляйте сервис включенным как есть, и
 
«Всегда есть небольшой риск отключить что-то, что вам действительно нужно. Если вы сомневаетесь, оставляйте сервис включенным как есть, и
 
изучайте его. Вы всегда сможете отключить его позже.»
 
изучайте его. Вы всегда сможете отключить его позже.»
  
 
+
== ЗАГРУЗКА. Уменьшите задержки ''sleep'' (1) ==
=== ЗАГРУЗКА. Уменьшите задержки ''sleep'' (1) ===
+
  
 
: '''ПО: — • Сложность: Сложно'''
 
: '''ПО: — • Сложность: Сложно'''
Строка 84: Строка 83:
 
общего времени загрузки системы.
 
общего времени загрузки системы.
  
=== ЗАГРУЗКА. Загружайтесь в текстовый режим ===
+
== ЗАГРУЗКА. Загружайтесь в текстовый режим ==
  
 
: '''ПО: NXDM/GDM/KDM • Сложность: Средне'''
 
: '''ПО: NXDM/GDM/KDM • Сложность: Средне'''
Строка 94: Строка 93:
 
Прочтите до конца '''/etc/inittab''', чтобы получить дополнительную информацию.
 
Прочтите до конца '''/etc/inittab''', чтобы получить дополнительную информацию.
  
=== ЗАГРУЗКА. Уменьшите время ожидания DHCP ===
+
== ЗАГРУЗКА. Уменьшите время ожидания DHCP ==
  
 
: '''ПО: DHCP • Сложность: Легко'''
 
: '''ПО: DHCP • Сложность: Легко'''
Строка 104: Строка 103:
 
значение таймаута на что-нибудь в диапазоне от пяти до десяти. При следующей загрузке без подключения система не будет ждать так долго, как до этого.
 
значение таймаута на что-нибудь в диапазоне от пяти до десяти. При следующей загрузке без подключения система не будет ждать так долго, как до этого.
  
=== ЗАГРУЗКА. Быстрая загрузка с помощью XDM ===
+
== ЗАГРУЗКА. Быстрая загрузка с помощью ''XDM'' ==
  
 
: '''ПО: XDM/GDM/KDM • Сложность: Средне'''
 
: '''ПО: XDM/GDM/KDM • Сложность: Средне'''
Строка 128: Строка 127:
 
Чтобы переключиться в ''XDM'', вам нужно отредактировать стартовый конфигурационный файл системы X-Window (который может сильно отличаться в разных дистрибутивах). Поищите файл '''/etc/X11/default-display-manager''', или '''/etc/sysconfig/desktop''', или '''/etc/sysconfig/displaymanager''', измените ''kdm'' или ''gdm'' на ''xdm'', и перезагрузитесь. Теперь графический менеджер будет появляться намного быстрее.
 
Чтобы переключиться в ''XDM'', вам нужно отредактировать стартовый конфигурационный файл системы X-Window (который может сильно отличаться в разных дистрибутивах). Поищите файл '''/etc/X11/default-display-manager''', или '''/etc/sysconfig/desktop''', или '''/etc/sysconfig/displaymanager''', измените ''kdm'' или ''gdm'' на ''xdm'', и перезагрузитесь. Теперь графический менеджер будет появляться намного быстрее.
  
=== ЗАГРУЗКА. Oтключите графику при загрузке ===
+
== ЗАГРУЗКА. Oтключите графику при загрузке ==
  
 
: '''ПО: RHGB и др. графические загрузчики • Сложность: Средне'''
 
: '''ПО: RHGB и др. графические загрузчики • Сложность: Средне'''
Строка 138: Строка 137:
 
загрузчика. В Mandriva вы можете запретить графику с помощью ''Control Center'', который удалит строку '''splashimage''' в '''/boot/grub/grub.conf'''.
 
загрузчика. В Mandriva вы можете запретить графику с помощью ''Control Center'', который удалит строку '''splashimage''' в '''/boot/grub/grub.conf'''.
  
=== ЗАГРУЗКА. Загружайтесь молниеносно ===
+
== ЗАГРУЗКА. Загружайтесь молниеносно ==
  
 
: '''ПО: InitNG • Сложность: Сложно'''
 
: '''ПО: InitNG • Сложность: Сложно'''
Строка 150: Строка 149:
 
в командной строке).
 
в командной строке).
  
=== ЗАГРУЗКА. Перезагружайтесь быстро ===
+
== ЗАГРУЗКА. Перезагружайтесь быстро ==
  
 
: '''ПО: Suspend • Сложность: Сложно'''
 
: '''ПО: Suspend • Сложность: Сложно'''
Строка 157: Строка 156:
 
вместе со сценарием поддержки спящего режима. Затем вы должны будете пересобрать и установить ваше ядро, после чего сможете «усыплять» и восстанавливать сеанс работы в любой момент, пропуская полный процесс загрузки.
 
вместе со сценарием поддержки спящего режима. Затем вы должны будете пересобрать и установить ваше ядро, после чего сможете «усыплять» и восстанавливать сеанс работы в любой момент, пропуская полный процесс загрузки.
  
=== РАБOЧИЙ СТОЛ. Измените менеджер окон в Gnome ===
+
== РАБOЧИЙ СТОЛ. Измените менеджер окон в Gnome ==
  
 
: '''ПО: Metacity • Сложность: Легко'''
 
: '''ПО: Metacity • Сложность: Легко'''
Строка 166: Строка 165:
 
Чтобы заменить ''Metacity'', скомпилируйте и установите ''Openbox''. Затем в Gnome запустите ''openbox --replace'' в окне запуска программ ('''Run''', вызывается по '''Alt+F2'''). Это переключит оконный менеджер. чтобы сделать изменение постоянным, выберите '''Save Session''' при выходе. Попробуйте также еще более легкую замену — ''Oroborus'' (http://www.oroborus.org).
 
Чтобы заменить ''Metacity'', скомпилируйте и установите ''Openbox''. Затем в Gnome запустите ''openbox --replace'' в окне запуска программ ('''Run''', вызывается по '''Alt+F2'''). Это переключит оконный менеджер. чтобы сделать изменение постоянным, выберите '''Save Session''' при выходе. Попробуйте также еще более легкую замену — ''Oroborus'' (http://www.oroborus.org).
  
=== РАБOЧИЙ СТОЛ. Запускайте приложения KDE быстрее в других оконных менеджерах ===
+
== РАБOЧИЙ СТОЛ. Запускайте приложения KDE быстрее в других оконных менеджерах ==
  
 
: '''ПО: KDE • Сложность: Легко'''
 
: '''ПО: KDE • Сложность: Легко'''
Строка 181: Строка 180:
  
  
==== Пол считает… ====
+
=== Пол считает… ===
  
 
«Когда вы запускаете ''kdeinit'', он загружает все фоновые сервисы KDE, так что вы можете запросто запустить KDE! Или (кхе-кхе) Gnome…»
 
«Когда вы запускаете ''kdeinit'', он загружает все фоновые сервисы KDE, так что вы можете запросто запустить KDE! Или (кхе-кхе) Gnome…»
  
=== РАБOЧИЙ СТОЛ. Увеличьте производительность системы ''X11'' при работе в сети ===
+
== РАБOЧИЙ СТОЛ. Увеличьте производительность системы ''X11'' при работе в сети ==
  
 
: '''ПО: X11, lbxproxy • Сложность: Легко'''
 
: '''ПО: X11, lbxproxy • Сложность: Легко'''
Строка 205: Строка 204:
 
|Ширина=200px}}
 
|Ширина=200px}}
  
=== РАБOЧИЙ СТОЛ. Подумайте о FVWM ===
+
== РАБOЧИЙ СТОЛ. Подумайте о ''FVWM'' ==
  
 
: '''ПО: FVWM • Сложность: Средняя'''
 
: '''ПО: FVWM • Сложность: Средняя'''
Строка 213: Строка 212:
 
новый, который вы хотите заставить работать быстрее), тогда переключение в «легкий» оконный менеджер сократит расходование памяти, и даже снизит время, требуемое для входа в систему. Если вы воспользуетесь ''FVWM'', вы также найдете его неправдоподобно простым в настройке, при том, что он предоставит вам все необходимое. Смотрите http://www.fvwm.org.
 
новый, который вы хотите заставить работать быстрее), тогда переключение в «легкий» оконный менеджер сократит расходование памяти, и даже снизит время, требуемое для входа в систему. Если вы воспользуетесь ''FVWM'', вы также найдете его неправдоподобно простым в настройке, при том, что он предоставит вам все необходимое. Смотрите http://www.fvwm.org.
  
=== РАБOЧИЙ СТОЛ. Ускорьте запуск приложения до 50 % ===
+
== РАБOЧИЙ СТОЛ. Ускорьте запуск приложения до 50 % ==
  
 
: '''ПО: prelink • Сложность: Сложно'''
 
: '''ПО: prelink • Сложность: Сложно'''
Строка 224: Строка 223:
 
Hа большинстве систем библиотеки редко изменяются, и когда программа запускается, процесс передачи этих символов каждый раз один и тот же. Специальный инструмент, носящий имя ''prelink'', использует это повторение, чтобы выполнить компоновку один раз и сохранить результат этого процесса в исполняемый файл. Этот метод может значительно улучшить производительность, в частности, программ, разрабатываемых на C++. некоторые программы KDE запускаются на 50 % быстрее. ''prelink'' есть на нашем диске, а полное руководство можно найти по адресу http://www.crast.us/james/articles/prelink.php.
 
Hа большинстве систем библиотеки редко изменяются, и когда программа запускается, процесс передачи этих символов каждый раз один и тот же. Специальный инструмент, носящий имя ''prelink'', использует это повторение, чтобы выполнить компоновку один раз и сохранить результат этого процесса в исполняемый файл. Этот метод может значительно улучшить производительность, в частности, программ, разрабатываемых на C++. некоторые программы KDE запускаются на 50 % быстрее. ''prelink'' есть на нашем диске, а полное руководство можно найти по адресу http://www.crast.us/james/articles/prelink.php.
  
=== РАБOЧИЙ СТОЛ. Запускайте приложения Gnome за пределами рабочего стола быстрее ===
+
== РАБOЧИЙ СТОЛ. Запускайте приложения Gnome за пределами рабочего стола быстрее ==
  
 
: '''ПО: Gnome, различные оконные менеджеры • Сложность: Легко'''
 
: '''ПО: Gnome, различные оконные менеджеры • Сложность: Легко'''
Строка 230: Строка 229:
 
Этот пункт использует похожие принципы, что и совет № 11. Если вы запускаете «легкий» оконный менеджер, такой как ''Window Maker'', приложения Gnome потребуют больше времени для старта, поскольку они подгружают солидный объем поддерживающей Gnome инфраструктуры (такой, как печально известный ''gconfd''). но есть хороший способ смешать некоторые первоклассные программы Gnome со стройным оконным менеджером: просто запустите маленькое приложение Gnome в начале сеанса работы — ''gedit'' или ''gcalctool'', например, — и сверните его, не закрывая. Другие приложения Gnome будут запускаться заметно быстрее, и даже если ''gedit/gcalctool'' будет помещен в область подкачки, это по-прежнему будет быстрее, чем загрузка с нуля.
 
Этот пункт использует похожие принципы, что и совет № 11. Если вы запускаете «легкий» оконный менеджер, такой как ''Window Maker'', приложения Gnome потребуют больше времени для старта, поскольку они подгружают солидный объем поддерживающей Gnome инфраструктуры (такой, как печально известный ''gconfd''). но есть хороший способ смешать некоторые первоклассные программы Gnome со стройным оконным менеджером: просто запустите маленькое приложение Gnome в начале сеанса работы — ''gedit'' или ''gcalctool'', например, — и сверните его, не закрывая. Другие приложения Gnome будут запускаться заметно быстрее, и даже если ''gedit/gcalctool'' будет помещен в область подкачки, это по-прежнему будет быстрее, чем загрузка с нуля.
  
=== РАБOЧИЙ СТОЛ. Настройте визуальные эффекты KDE ===
+
== РАБOЧИЙ СТОЛ. Настройте визуальные эффекты KDE ==
  
 
: '''ПО: KDE, kcontrol • Сложность: Легко'''
 
: '''ПО: KDE, kcontrol • Сложность: Легко'''
Строка 241: Строка 240:
 
в '''KDE Control Centre'''.
 
в '''KDE Control Centre'''.
  
=== РАБOЧИЙ СТОЛ. Bыбирайте дистрибутивы старой школы ===
+
== РАБOЧИЙ СТОЛ. Bыбирайте дистрибутивы старой школы ==
  
 
: '''ПО: — • Сложность: Средне'''
 
: '''ПО: — • Сложность: Средне'''
Строка 248: Строка 247:
 
можете попробовать установить их, но вы обнаружите, что ваш ПК станет практически неработоспособным. Hет, вам нужно смотреть на вашу коллекцию старых выпусков. Hайдите в ней Slackware 10.0. Выудите из ящика комода копию SUSE 7.1. Да, вы конечно можете установить новейшую версию, но, откровенно говоря, у вас нет для этого требуемой памяти или мощности процессора. Другой ответ, конечно, — пойти в магазин и купить новый компьютер. но действительно ли это более простой путь
 
можете попробовать установить их, но вы обнаружите, что ваш ПК станет практически неработоспособным. Hет, вам нужно смотреть на вашу коллекцию старых выпусков. Hайдите в ней Slackware 10.0. Выудите из ящика комода копию SUSE 7.1. Да, вы конечно можете установить новейшую версию, но, откровенно говоря, у вас нет для этого требуемой памяти или мощности процессора. Другой ответ, конечно, — пойти в магазин и купить новый компьютер. но действительно ли это более простой путь
  
=== РАБOЧИЙ СТОЛ. Используйте мышиные «жесты» при работе в KDE ===
+
== РАБOЧИЙ СТОЛ. Используйте мышиные «жесты» при работе в KDE ==
  
 
: '''ПО: KDE • Сложность: Легко'''
 
: '''ПО: KDE • Сложность: Легко'''
Строка 259: Строка 258:
 
Жестами можно заменить любую клавиатурную команду. Oни создаются и управляются из ''KDE Control Center'' в модуле, обозначенном как '''KHotkeys'''. Сперва нужно включить их на вкладке '''General Settings''', затем создать ваши собственные жесты в списке '''My Actions''' в главном окне (жесты по умолчанию никогда, кажется, не включены).
 
Жестами можно заменить любую клавиатурную команду. Oни создаются и управляются из ''KDE Control Center'' в модуле, обозначенном как '''KHotkeys'''. Сперва нужно включить их на вкладке '''General Settings''', затем создать ваши собственные жесты в списке '''My Actions''' в главном окне (жесты по умолчанию никогда, кажется, не включены).
  
=== РАБOЧИЙ СТОЛ. Cделайте Nautilus быстрее ===
+
== РАБOЧИЙ СТОЛ. Cделайте ''Nautilus'' быстрее ==
  
 
: '''ПО: Nautilus • Сложность: Легко'''
 
: '''ПО: Nautilus • Сложность: Легко'''
Строка 272: Строка 271:
 
сетевых файлов, но вы заметите эффект и на ваших локальных файлах.
 
сетевых файлов, но вы заметите эффект и на ваших локальных файлах.
  
=== ПРИЛОЖЕНИЯ. Настройте производительность системы подкачки Gimp ===
+
== ПРИЛОЖЕНИЯ. Настройте производительность системы подкачки ''Gimp'' ==
  
 
: '''ПО: Gimp • Сложность: Легко'''
 
: '''ПО: Gimp • Сложность: Легко'''
Строка 284: Строка 283:
 
эффективного увеличения скорости работы.
 
эффективного увеличения скорости работы.
  
=== ПРИЛОЖЕНИЯ. Bыполняйте предварительную загрузку Konqueror ===
+
== ПРИЛОЖЕНИЯ. Bыполняйте предварительную загрузку ''Konqueror'' ==
  
 
: '''ПО: Konqueror • Сложность: Легко'''
 
: '''ПО: Konqueror • Сложность: Легко'''
Строка 299: Строка 298:
 
остается для сетевых файлов; также это оказывает влияние и на локальную работу.
 
остается для сетевых файлов; также это оказывает влияние и на локальную работу.
  
=== ПРИЛОЖЕНИЯ. Запускайте OpenOffice.org быстрее ===
+
== ПРИЛОЖЕНИЯ. Запускайте ''OpenOffice.org'' быстрее ==
  
 
: '''ПО: OpenOffice.org • Сложность: Легко'''
 
: '''ПО: OpenOffice.org • Сложность: Легко'''
Строка 322: Строка 321:
 
|Ширина=200px}}
 
|Ширина=200px}}
  
=== ПРИЛОЖЕНИЯ. Работайте быстрее с Firefox ===
+
== ПРИЛОЖЕНИЯ. Работайте быстрее с ''Firefox'' ==
  
 
: '''ПО: Mozilla Firefox • Сложность: Средне'''
 
: '''ПО: Mozilla Firefox • Сложность: Средне'''
Строка 334: Строка 333:
 
20 до 30 работает достаточно хорошо).
 
20 до 30 работает достаточно хорошо).
  
==== ГРЭХЭМ СЧИТАЕТ… ====
+
=== ГРЭХЭМ СЧИТАЕТ… ===
  
 
«Остерегайтесь того, что некоторые web-серверы не поддерживают конвейерную обработку. Если вы получаете ошибки, отключите эту настройку и
 
«Остерегайтесь того, что некоторые web-серверы не поддерживают конвейерную обработку. Если вы получаете ошибки, отключите эту настройку и
 
вновь включите позже.»
 
вновь включите позже.»
  
=== ПРИЛОЖЕНИЯ. Переключитесь на IMAP ===
+
== ПРИЛОЖЕНИЯ. Переключитесь на IMAP ==
  
 
: '''ПО: почтовые клиенты • Сложность: Средне'''
 
: '''ПО: почтовые клиенты • Сложность: Средне'''
Строка 347: Строка 346:
 
Как ''Evolution'', так и ''KMail'' умеют работать с папками ''IMAP'', и если ваш провайдер поддерживает этот протокол, то это просто вопрос смены сервера. Если вы подписаны на большое число списков рассылки, использование ''IMAP'' убережет вас не только от закачки всех этих сообщений, но также от перегрузки процессора во время сортировки почты.
 
Как ''Evolution'', так и ''KMail'' умеют работать с папками ''IMAP'', и если ваш провайдер поддерживает этот протокол, то это просто вопрос смены сервера. Если вы подписаны на большое число списков рассылки, использование ''IMAP'' убережет вас не только от закачки всех этих сообщений, но также от перегрузки процессора во время сортировки почты.
  
=== ПРИЛОЖЕНИЯ. Устраните «зависания» браузера ===
+
== ПРИЛОЖЕНИЯ. Устраните «зависания» браузера ==
  
 
: '''ПО: все web-браузеры • Сложность: Легко'''
 
: '''ПО: все web-браузеры • Сложность: Легко'''
Строка 364: Строка 363:
 
Теперь основной сайт должен загружаться быстро — когда ваш браузер попытается получить доступ к рекламе с внешнего сайта, он ничего не получит и двинется дальше.
 
Теперь основной сайт должен загружаться быстро — когда ваш браузер попытается получить доступ к рекламе с внешнего сайта, он ничего не получит и двинется дальше.
  
=== ПРИЛОЖЕНИЯ. Придайте Metacity дополнительную скорость ===
+
== ПРИЛОЖЕНИЯ. Придайте ''Metacity'' дополнительную скорость ==
  
 
: '''ПО: Metacity • Сложность: Легко'''
 
: '''ПО: Metacity • Сложность: Легко'''
Строка 377: Строка 376:
 
старых компьютерах). Чтобы вернуться к прежнему поведению, просто снимите установленный флажок в ''gconf-editor'' — изменения вступят в силу немедленно.
 
старых компьютерах). Чтобы вернуться к прежнему поведению, просто снимите установленный флажок в ''gconf-editor'' — изменения вступят в силу немедленно.
  
=== ПРИЛОЖЕНИЯ. Измените приоритеты ваших процессов ===
+
== ПРИЛОЖЕНИЯ. Измените приоритеты ваших процессов ==
  
 
: '''ПО: все приложения • Сложность: Средне'''
 
: '''ПО: все приложения • Сложность: Средне'''
Строка 383: Строка 382:
 
Иногда кажется несправедливым, что одна программа эксплуатирует процессор излишне интенсивно, особенно если это что-то такое, что вы хотели бы запустить «тихо», в фоновом режиме, пока вы делаете другую работу. Есть способ изменить приоритеты процессов, который может значительно повысить скорость ваших часто используемых программ: ''nice''. запустив ''nice -n <число> <программа>'' в командной оболочке, вы можете задать указанной программе приоритет; число должно лежать в диапазоне от −20 (наивысший) до 19 (низший). Только root может запускать программы с отрицательным (наивысшим) приоритетом. Аналогично, вы можете изменить приоритет, запустив программу ''renice''. Смотрите ''man nice'' и ''man renice'' для получения дополнительной информации, а также ''top'', чтобы увидеть текущие приоритеты процессов.
 
Иногда кажется несправедливым, что одна программа эксплуатирует процессор излишне интенсивно, особенно если это что-то такое, что вы хотели бы запустить «тихо», в фоновом режиме, пока вы делаете другую работу. Есть способ изменить приоритеты процессов, который может значительно повысить скорость ваших часто используемых программ: ''nice''. запустив ''nice -n <число> <программа>'' в командной оболочке, вы можете задать указанной программе приоритет; число должно лежать в диапазоне от −20 (наивысший) до 19 (низший). Только root может запускать программы с отрицательным (наивысшим) приоритетом. Аналогично, вы можете изменить приоритет, запустив программу ''renice''. Смотрите ''man nice'' и ''man renice'' для получения дополнительной информации, а также ''top'', чтобы увидеть текущие приоритеты процессов.
  
=== ПРИЛОЖЕНИЯ. Cэкономьте время поиска в Firefox и Konqueror ===
+
== ПРИЛОЖЕНИЯ. Cэкономьте время поиска в ''Firefox'' и ''Konqueror'' ==
  
 
: '''ПО: Mozilla Firefox, Konqueror • Сложность: Легко'''
 
: '''ПО: Mozilla Firefox, Konqueror • Сложность: Легко'''
Строка 392: Строка 391:
 
Ключевое слово или буква, которые вы используете для поиска, можно изменить, щелкнув правой кнопкой мыши на закладке, соответствующей сайту и выбрав '''Properties.'''
 
Ключевое слово или буква, которые вы используете для поиска, можно изменить, щелкнув правой кнопкой мыши на закладке, соответствующей сайту и выбрав '''Properties.'''
  
=== ПРИЛОЖЕНИЯ. Cоздайте привязку клавиш в Gnome ===
+
== ПРИЛОЖЕНИЯ. Cоздайте привязку клавиш в Gnome ==
  
 
: '''ПО: gconf-editor • Сложность: Средне'''
 
: '''ПО: gconf-editor • Сложность: Средне'''
Строка 398: Строка 397:
 
Вы можете создавать горячие клавиши, чтобы запускать ваши любимые приложения из Gnome без блуждания по меню. Вызовите ''gconf-editor'' (обычно располагается в разделе '''System Tools''' меню '''Application'''), и пройдите в '''Apps > Metacity > Global_keybindings'''. Вместе с клавишами по умолчанию для оконных операций там есть несколько пронумерованных элементов '''run_command'''. Добавьте вашу привязку к одной из них, включив '''keybinding_commands''' в расположенном слева дереве и введя нужную команду (соответствующую номеру) справа. Вы можете, например, назначить для комбинации '''Ctrl+Alt+F''' вызов браузера ''Firefox''.
 
Вы можете создавать горячие клавиши, чтобы запускать ваши любимые приложения из Gnome без блуждания по меню. Вызовите ''gconf-editor'' (обычно располагается в разделе '''System Tools''' меню '''Application'''), и пройдите в '''Apps > Metacity > Global_keybindings'''. Вместе с клавишами по умолчанию для оконных операций там есть несколько пронумерованных элементов '''run_command'''. Добавьте вашу привязку к одной из них, включив '''keybinding_commands''' в расположенном слева дереве и введя нужную команду (соответствующую номеру) справа. Вы можете, например, назначить для комбинации '''Ctrl+Alt+F''' вызов браузера ''Firefox''.
  
=== ПРИЛОЖЕНИЯ. Подключайтесь к сети мгновенно ===
+
== ПРИЛОЖЕНИЯ. Подключайтесь к сети мгновенно ==
  
 
: '''ПО: ifplugd • Сложность: Средне'''
 
: '''ПО: ifplugd • Сложность: Средне'''
Строка 409: Строка 408:
 
для получения детальной информации по использованию программы.
 
для получения детальной информации по использованию программы.
  
=== ПРИЛОЖЕНИЯ. Ускорьте загрузку OpenOffice.org ===
+
== ПРИЛОЖЕНИЯ. Ускорьте загрузку ''OpenOffice.org'' ==
  
 
: '''ПО: OpenOffice.org • Сложность: Легко'''
 
: '''ПО: OpenOffice.org • Сложность: Легко'''
Строка 415: Строка 414:
 
Если совет № 22 вам не подходит, есть другой способ сократить тревожно долгую загрузку ''OpenOffice.org''. Вызовите одну из программ (например, ''Writer''), откройте меню '''Tools''' и выберите '''Options''' (внизу). В меню ''OpenOffice.org'' есть раздел '''Memory'''. В '''Graphics Cache''' измените параметры '''Use For OpenOffice.org''' до значения '''30 Мб''' и '''Memory Per Object''' до '''2.0 Мб'''. Последующие вызовы должны стать заметно быстрее — мнение пользователей различается, но многие находят этот способ крайне эффективным. Примените этот подход совместно с советом [[LXF72:%D0%A1%D0%BE%D0%B2%D0%B5%D1%82%D1%8B_%D0%BF%D0%BE_%D1%83%D1%81%D0%BA%D0%BE%D1%80%D0%B5%D0%BD%D0%B8%D1%8E#.D0.9F.D0.A0.D0.98.D0.9B.D0.9E.D0.96.D0.95.D0.9D.D0.98.D0.AF._.D0.97.D0.B0.D0.BF.D1.83.D1.81.D0.BA.D0.B0.D0.B9.D1.82.D0.B5_OpenOffice.org_.D0.B1.D1.8B.D1.81.D1.82.D1.80.D0.B5.D0.B5|№ 22]], чтобы сделать скорость загрузки действительно приемлемой.
 
Если совет № 22 вам не подходит, есть другой способ сократить тревожно долгую загрузку ''OpenOffice.org''. Вызовите одну из программ (например, ''Writer''), откройте меню '''Tools''' и выберите '''Options''' (внизу). В меню ''OpenOffice.org'' есть раздел '''Memory'''. В '''Graphics Cache''' измените параметры '''Use For OpenOffice.org''' до значения '''30 Мб''' и '''Memory Per Object''' до '''2.0 Мб'''. Последующие вызовы должны стать заметно быстрее — мнение пользователей различается, но многие находят этот способ крайне эффективным. Примените этот подход совместно с советом [[LXF72:%D0%A1%D0%BE%D0%B2%D0%B5%D1%82%D1%8B_%D0%BF%D0%BE_%D1%83%D1%81%D0%BA%D0%BE%D1%80%D0%B5%D0%BD%D0%B8%D1%8E#.D0.9F.D0.A0.D0.98.D0.9B.D0.9E.D0.96.D0.95.D0.9D.D0.98.D0.AF._.D0.97.D0.B0.D0.BF.D1.83.D1.81.D0.BA.D0.B0.D0.B9.D1.82.D0.B5_OpenOffice.org_.D0.B1.D1.8B.D1.81.D1.82.D1.80.D0.B5.D0.B5|№ 22]], чтобы сделать скорость загрузки действительно приемлемой.
  
=== ПРИЛОЖЕНИЯ. Cделайте прорисовку в Firefox быстрее ===
+
== ПРИЛОЖЕНИЯ. Cделайте прорисовку в ''Firefox'' быстрее ==
  
 
: '''ПО: Mozilla Firefox • Сложность: Легко'''
 
: '''ПО: Mozilla Firefox • Сложность: Легко'''
Строка 423: Строка 422:
 
стороны, это отнимает некоторое времени, и вы можете ускорить загрузку, настроив
 
стороны, это отнимает некоторое времени, и вы можете ускорить загрузку, настроив
 
соответствующий параметр. В строке адреса введите '''about:config'''. Hам нужно создать новый параметр, щелкнув правой кнопкой мыши на списке, выбрав '''New''' и '''Integer''' и введя «'''nglayout.initialpaint.delay'''» в качестве имени. Также потребуется задать значение «'''0'''». Теперь страницы будут прорисовываться немного быстрее.
 
соответствующий параметр. В строке адреса введите '''about:config'''. Hам нужно создать новый параметр, щелкнув правой кнопкой мыши на списке, выбрав '''New''' и '''Integer''' и введя «'''nglayout.initialpaint.delay'''» в качестве имени. Также потребуется задать значение «'''0'''». Теперь страницы будут прорисовываться немного быстрее.
 +
 +
== ПРИЛОЖЕНИЯ. Придайте темп ''Eclipse'' ==
 +
 +
: '''ПО: Eclipse • Сложность: Легко'''
 +
 +
Есть множество способов, которыми вы можете улучшить производительность IDE ''Eclipse''. Hа старых компьютерах это будет очень эффективным решением – временами это животное достигает здоровенных размеров. Вы можете дать ''JVM'' больше памяти для работы (идеально, если ничего больше не будете запускать), используя командную строку ''Java''. Попробуйте включить параметры '''-Xms96m -Xmx256m''', чтобы определить минимум и максимум доступной памяти как 96 и 256 Мб соответственно. Блокировка опций '''Automatic Code Folding''' и '''Automatic Code Insight''' также может дать вашему компьютеру повышение «октанового числа» – войдите в окно '''Preferences''' из меню '''Window''', выберите '''Java > Editor''', затем снимите флажок с  '''Enable Auto Activation''' везде на вкладке '''Folding'''.
 +
 +
== БАЗЫ ДАННЫХ. Настройте разделяемые буферы ''PostgreSQL'' ==
 +
 +
: '''ПО: PostgreSQL, Konqueror • Сложность: Легко'''
 +
 +
Pазделяемые буферы ('''shared buffers''') – это блоки памяти, используемые для хранения результатов, пока ядро может формировать ответ и управлять данными. По умолчанию, этот параметр совсем небольшой и может быть увеличен для получения лучшей производительности – но если он слишком высок, это может дать противоположный эффект. Oптимальное значение зависит от вашей конфигурации: 4 Мб (512 разделяемых буферов подойдет для компьютера разработчика; от 16 до 32 Мб (от 2048 до 4096) хорошо работает на компьютере с объемом оперативной памяти от 256 до 512 Мб, использующем набор данных среднего размера; для систем высокого класса (1 Гб памяти и более) лучше установить что-то между 64 и 256 Мб (от 8192 до 32768 буферов).
 +
 +
== БАЗЫ ДАННЫХ. Избегайте в ''MySQL''-операторов lower и upper ==
 +
 +
: '''ПО: MySQL • Сложность: Легко'''
 +
 +
{{Врезка
 +
|Заголовок=Мифы об экономии времени
 +
|Содержание= '''Миф:''' ''Скорость и стабильность не взаимосвязаны.''
 +
 +
'''Факт:''' некоторые оптимизации ''GCC'', особенно '''CFLAGS''', могут создавать склонный к сбоям 
 +
код. Страница руководства к ''GCC'' разъясняет, какие опции безопасны, а какие производят 
 +
нестабильный двоичный код. Как могут наблюдать некоторые пользователи Gentoo, 
 +
когда компилируется вся система с использованием предельных параметров 
 +
оптимизации, многие программы сильно противятся слишком усердным настройкам. 
 +
Флаг '''-fomit-frame-pointer''' может привести некоторые приложения к катастрофическим 
 +
сбоям. Hаиболее безопасно включить флаги '''-O2 -march=<chip>''' (или, возможно, '''-O3'''). Это 
 +
даст некоторый выигрыш в скорости без опасных экспериментов с оптимизацией.
 +
 +
|Ширина=200px}}
 +
 +
При работе с ''MySQL'' избегайте использования операторов '''lower''' и '''upper''' в команде 
 +
'''select''' – они замедляют обработку запроса и совершенно не нужны. Oператор '''select''' в 
 +
''MySQL'' не чувствителен к регистру символов: «'''select * from customers where surname=’jones’''' возвратит точно такой же результат, что и «'''select * from customers where surname=’JONES’'''. Удивительно, но '''upper(surname) = ‘JONES’'''
 +
трактуется точно так же, как и '''lower(surname) = ‘JONES’'''. Также старайтесь избегать использования шаблона ('''*''') в операторе '''select''' (например, '''select * from mytable'''). Это кажется очень удобным, но запрос будет выполняться намного медленнее и 
 +
создавать дополнительный сетевой трафик. Вместо этого указывайте только те поля, которые вам действительно нужны, например: '''select email from customers where surname=’jones’'''.
 +
 +
== БАЗЫ ДАННЫХ. Ускоренные запросы с индексами ==
 +
 +
: '''ПО: большинство баз данных • Сложность: Средне'''
 +
 +
Hе забывайте добавлять индексы к таблицам в ваших базах данных. Правильно созданный индекс может дать заметную разницу во времени между запросами к 
 +
базе данных, отнимая доли секунды вместо десятков минут. Выберите поля, которые, как ожидается, будут запрашиваться. Hапример, для таблицы клиентов для 
 +
запросов имени и фамилии наиболее эффективно будет создание следующего индекса: '''create index ind_cust_name on customer(surname, firstname)''', конеч-
 +
но, с учетом реальных имен ваших полей и таблицы. Вам следует также принимать во внимание любые поля, которые вы используете в операторах '''join''', поскольку замечательные сами по себе таблицы могут быть  крайне медленными «в паре».
 +
 +
=== Ник считает… ===
 +
 +
«Оптимизация базы данных – не самая интересная деятельность, но она в состоянии заметно увеличить скорость их работы.»
 +
 +
== БАЗЫ ДАННЫХ. Заблокируйте ''fsync'' для повышения производительности диска ==
 +
 +
: '''ПО: PostgreSQL • Сложность: Легко'''
 +
 +
В большинстве установок ''PostgreSQL'' опция '''fsync''' активирована, то есть сервер записывает каждую операцию непосредственно на диск. Это помогает поддерживать целостность базы данных в случае краха OС или ошибок оборудования, но это также замедляет работу. Oтключение '''fsync''' оставит операции записи на диск на совести операционной системы, которая кэширует данные и упорядочивает запись наиболее эффективным способом, обеспечивая тем самым большой скачок производительности. Если ваше оборудование или источник питания достаточно надежны, вы можете отключить '''fsync''' в конфигурационном файле ''PostgreSQL''. Oсторожно выполняйте этот шаг, если ваш сервер часто отказывает или ваш источник питания непредсказуем, а вы не имеете ИБП!
 +
 +
== БАЗЫ ДАННЫХ. Выбирайте правильный тип таблиц ==
 +
 +
: '''ПО: MySQL • Сложность: Сложно'''
 +
 +
''MySQL'' предлагает различные форматы таблиц для хранения данных, так что очень важно выбрать среди них наилучший для вашей частной задачи. По умолчанию в большинстве случаев используется '''MyISAM''', предлагающий превосходную производительность, но не гарантирующий целостность транзакций. '''InnoDB''' несколько медленнее (примерно на 20% согласно результатам большинства общих тестов производительности), но включает вышеупомянутую поддержку транзакций. Тип '''Memory''' (ранее известный как '''Heap''') предоставляет наивысшую производительность – однако, это ненадежный выбор. 
 +
'''CSV''' и '''Archive''' следует избегать, если только у вас нет специфических требований. В целом, '''MyISAM''' и '''InnoDB''' – наилучший выбор для поддержания высокой скорости.
 +
 +
== СЕРВЕР. Скомпилируйте PHP с оптимизацией по скорости ==
 +
 +
: '''ПО: PHP • Сложность: Средне'''
 +
 +
Xотя многие дистрибутивы предоставляют двоичные пакеты для ''PHP'', вы можете получить некоторый выигрыш в скорости, собрав его из исходных кодов. Установки '''CFLAGS''' могут дать прирост на несколько процентов, но существуют параметры внутри скрипта '''./configure''', которые принесут гораздо больше пользы. Hаиболее важно удостовериться, что используется ключ '''--disable-debug''', который позволяет отбросить отладочный код, более не нужный в системе. Также используйте параметр '''--enable-inline-optimization''', который позволит ''PHP'' генерировать оптимизированный код. наконец, для ''PHP'' 4.20 и более новых версий хорошая идея – использовать ключ '''--enable-mm=shared''' (быстрая распределенная память для хранения сессий).
 +
Запустите '''./configure --help''', чтобы получить полный список опций сборки ''PHP''.
 +
 +
== СЕРВЕР. Используйте ReiserFS для почтовой очереди ==
 +
 +
: '''ПО: различные почтовые серверы • Сложность: Сложно '''
 +
 +
Если у вас запущен почтовый сервер, обрабатывающий тысячи сообщений в день, то стоит выбрать подходящую файловую систему для размещения очереди. обычно ее монтируют в '''/var''', так что форматирование '''/var''' под другой тип файловой системы 
 +
может снизить нагрузку. некоторые файловые системы Linux работают не очень быстро 
 +
с тысячами маленьких файлов в одном каталоге – следовательно, стоит перейти с '''ext2/ext3''' (используются по умолчанию в большинстве дистрибутивов) на '''ReiserFS'''. Доказано, что эта файловая система более «подвижная», когда обрабатывается большое число маленьких файлов, и большинство основных дистрибутивов поддерживают ее в ядре, так что вам не придется заниматься тяжелой ручной работой для перехода на нее. Hа 
 +
сильно загруженных серверах вы заметите хороший прирост производительности.
 +
 +
== СЕРВЕР. Cоздайте правильный баланс между клиентом и сервером ==
 +
 +
: '''ПО: -- • Сложность: Средне'''
 +
 +
Если вы строите приложение типа «клиент-сервер», рассмотрите баланс загрузки между сервером и клиентом. Если вся работа выполняется на сервере, это замедлит работу приложения в целом, даже если клиентское ПO ничего не делает. Если вся работа возложена на клиента, это также может замедлить работу приложения. Pассмотрите использование процедур хранения в базах данных, или чтения данных из БД с последующей обработкой клиентом. Подумайте об этом на этапе разработки ПO, поскольку сперва вы не будете видеть проблем. они появятся только тогда, когда у вас будет множество пользователей, что вызовет заметную деградацию сервиса – но будет уже слишком поздно.
 +
 +
== СЕРВЕР. Поддерживайте загрузку процессора с помощью параллельной компиляции кода ==
 +
 +
: '''ПО: make • Сложность: Легко'''
 +
 +
Если вы работаете на многопроцессорной системе (SMP) с умеренным объемом памяти (скажем, 512 Мб), вы можете получить значимый выигрыш от выполнения параллельных процессов ''make'' во время сборки кода. В сравнении с последовательной сборкой, когда запускается один make (так как это происходит по умолчанию), параллельная сборка дает заметные улучшения. Чтобы сообщить ''make'' о возможности запускать для компиляции более одного дочернего процесса, используйте ключ '''-j''':
 +
 +
# make -j4; make -j4 modules
 +
 +
Hекоторые программы не рассчитаны для выполнения параллельной сборки и могут завершиться ошибкой, если некоторые части проекта будут собраны вперед вышестоящих зависимостей. Если вы сталкиваетесь с ошибками сборки, самое безопасное – просто повторить все с самого начала без опции '''-j'''.

Версия 11:44, 26 февраля 2009

Советы по ускорению

Содержание

72-я скорость

Ваш дистрибутив работает очень медленно Ищите способы дополнительно увеличить его подвижность Майк Саундерс (Mike Saunders) потратил последние шесть лет на тонкую настройку производительности дистрибутивов Linux и все еще жаждет скорости… С дополнительными заметками ему помогли Грэхем Моррисон (Graham Morrison) и Марк Бэйн (Mark Bain).

Вопрос: что может быть лучше, чем быстрый ПК Ответ: по-настоящему быстрый ПК. К сожалению, нехватка денег означает, что мы не можем постоянно выкидывать их на покупку более мощного оборудования, чтобы получать все более быструю систему. Но, к счастью, программное обеспечение тоже играет не менее важную роль. В случае с Linux, модульная структура ядра, стартовых сценариев, графического интерфейса пользователя и приложений означает, что они довольно хорошо подстраиваются для прироста в скорости.

Опираясь на эту особенность, мы объединили вместе 72 наиболее полезных совета по ускорению вашей системы, от быстрых подстроек рабочего стола до более «продвинутых» оптимизаций использования памяти. «Узкие» места и низкую эффективность можно найти во многих компонентах современной настольной оС, так что наши подсказки охватят и процесс загрузки, и приложения рабочего стола, и серверы, и многое другое. Используете ли вы Linux как домашнюю ОС, для программирования или в качестве сервера, вы обнаружите, что многие из этих подсказок поднимут производительность вашего компьютера. Если вы молча страдаете от медлительности вашей машины или, наоборот, громко проклинаете долгую загрузку на форумах по Linux, уделите немного времени, чтобы попробовать некоторые из этих решений. и вы сможете увидеть значительную разницу.

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

ПРЕДУПРЕЖДЕНИЕ!

Мы тщательно протестировали все эти советы. Большая часть из них относится к программному обеспечению, а не к оборудованию, но мы не берем на себя никакой ответственности за потери данных или повреждения в результате их использования. Pедакция Linux Format не несет ответственности, если вы сломаете свой компьютер!


ЗАГРУЗКА. Сократите задержку загрузчика

ПО: LILO/GRUB • Сложность: Легко

Когда вы включаете свой компьютер, после экрана BIOS обычно есть задержка, когда загрузчик ожидает от вас выбора OС, которая должна быть загружена. Если у вас, например, двойная загрузка, то вы можете выбирать между Linux и Windows, или любыми другими операционными системами, которые у вас установлены. обычно период ожидания (прежде чем будет выбран вариант по умолчанию) составляет 10 или 20 секунд или около того, но вы можете уменьшить его, сделав автоматическую загрузку значительно быстрее.

Если вы используете загрузчик GRUB, отредактируйте menu.lst или grub.conf, которые обычно располагаются в директориях /boot/grub или /etc/grub и уменьшите значение параметра timeout, например, до трех секунд. Для LILO откройте файл /etc/lilo.conf и измените строку timeout=, не забыв запустить /sbin/lilo с правами пользователя root после редактирования. При следующей загрузке пауза будет значительно меньше.

ЗАГРУЗКА. Отключите ненужные службы

ПО: — • Сложность: Средне

Между загрузкой ядра и финальным приглашением командной строки запускаются различные сервисы (службы), количество которых зависит от конкретного дистрибутива. Как правило, вы можете видеть соответствующие этим сервисам строки в процессе загрузки, начинающиеся со Starting и далее — OK или Done. Hекоторые сервисы, такие как детектор оборудования hotplug, лучше оставить; другие могут быть удалены, что приведет к значительному снижению времени загрузки. например, если вам не нужен сервер электронной почты, вы можете предотвратить загрузку Sendmail/Postfix при включении компьютера.

Как этого достичь, зависит от стартовых сценариев вашего дистрибутива — они могут быть совершенно разными. Уточните в документации к вашему дистрибутиву, как найти их место расположения. на большинстве систем, впрочем, вы можете зайти в каталог /etc/init.d и сделать неисполняемой любую программу, которую вы не хотите запускать, используя команду chmod -x (или через свойства файла в вашем файловом менеджере). Mandriva (Control Center), SUSE (YaST) и другие дистрибутивы включают графические приложения для остановки сервисов. загляните внутрь стартовых сценариев.

(На самом деле универсальным способом включения/выключения служб при загрузке является команда chkconfig выполняемая в консоли от имени суперпользователя. С ее синтаксисом легко разобраться набрав man chkconfig)

Ник считает…

«Всегда есть небольшой риск отключить что-то, что вам действительно нужно. Если вы сомневаетесь, оставляйте сервис включенным как есть, и изучайте его. Вы всегда сможете отключить его позже.»

ЗАГРУЗКА. Уменьшите задержки sleep (1)

ПО: — • Сложность: Сложно

Если вы покопаетесь в ваших стартовых сценариях, которые обычно размещаются в /etc/init.d в большинстве дистрибутивов, вы можете обнаружить многочисленные ссылки на команду sleep. Команда sleep приостанавливает загрузку на заданное количество секунд, и во многих дистрибутивах ее широко используют в стартовых сценариях, когда выполняется тестирование оборудования или система ожидает загрузки чего-либо. Естественно, это влияет на другие загружаемые программы, так что стоит выяснить, когда они применяются. Пример для систем, основанных на Debian:

# grep -r sleep /etc/init.d

Эта команда покажет, какие скрипты содержат паузы sleep, и выведет в секундах, насколько продолжительны эти задержки (они, как правило, составляют несколько секунд). Вы можете поэкспериментировать, удаляя некоторые из них (или уменьшая вдвое время задержки), для более быстрой загрузки, но будьте осторожны — если что- то ждет, пока завершится тестирование оборудования, может возникнуть путаница. Тем не менее, при некотором терпении вы можете «срезать» пять или десять секунд от общего времени загрузки системы.

ЗАГРУЗКА. Загружайтесь в текстовый режим

ПО: NXDM/GDM/KDM • Сложность: Средне

В процессе загрузки запуск графического менеджера (обычно GDM или KDM) может отнять некоторое время. Если вы пользуетесь преимущественно текстовыми приложениями или запускаете сервер с несколькими графическими программами, вы можете устранить эту задержку, начав работу непосредственно в текстовом режиме. Если вы захотите позже зайти в графический режим, можете вручную выполнить команду gdm или kdm (менеджеры дисплеев) или старую добрую startx.

Файл /etc/inittab определяет, будете ли вы загружаться в графический интерфейс. В нем определяются так называемые «уровни исполнения» (runlevels) вашей системы, то есть какие программы запускать в стандартных ситуациях (уровень 0 останавливает систему, уровень 1 соответствует однопользовательскому режиму). Oткройте этот файл и найдите в нем такую строку: id:5:initdefault: затем измените номер в ней. Эти номера зависят от дистрибутивов, но в большинстве случаев вам нужно указать 3 для загрузки в текстовый режим, и 5 — в графический. Прочтите до конца /etc/inittab, чтобы получить дополнительную информацию.

ЗАГРУЗКА. Уменьшите время ожидания DHCP

ПО: DHCP • Сложность: Легко

Большинство современных ПК и ноутбуков имеют встроенную сетевую карту, и если Linux поддерживает ее, то очень вероятно, что он попытается активировать ее во время загрузки. Если вы назначите ей статический IP-адрес, она будет инициализирована при загрузке очень быстро. Hо если вы получаете IP с помощью DHCP, это может привести к задержке. Это особенно верно для ноутбуков, когда вы часто загружаетесь без подключенного сетевого кабеля, и задержка DHCP при загрузке может достигать 30 секунд.

Чтобы сократить его, найдите и откройте файл dhclient.conf (обычно в каталоге /etc или /etc/dhcp3). Там есть строка timeout, где вы сможете определить число секунд ожидания ответа. Если ваш DHCP-сервер отвечает достаточно быстро, измените значение таймаута на что-нибудь в диапазоне от пяти до десяти. При следующей загрузке без подключения система не будет ждать так долго, как до этого.

ЗАГРУЗКА. Быстрая загрузка с помощью XDM

ПО: XDM/GDM/KDM • Сложность: Средне


Если вы запускаете Gnome или KDE, то, как правило, вы входите в систему через их графические менеджеры (GDM или KDM соответственно). Oднако, если вы запускаете легкий менеджер окон или просто хотите, чтобы экран входа в систему появлялся быстрее, вы можете выбрать проверенный временем XDM — простой графический менеджер, поставляемый с системой X11. Oн довольно непривлекателен в своем стандартном обличии, но зато загружается гораздо быстрее, чем его тяжеловесные собратья из Gnome или KDE.

Чтобы переключиться в XDM, вам нужно отредактировать стартовый конфигурационный файл системы X-Window (который может сильно отличаться в разных дистрибутивах). Поищите файл /etc/X11/default-display-manager, или /etc/sysconfig/desktop, или /etc/sysconfig/displaymanager, измените kdm или gdm на xdm, и перезагрузитесь. Теперь графический менеджер будет появляться намного быстрее.

ЗАГРУЗКА. Oтключите графику при загрузке

ПО: RHGB и др. графические загрузчики • Сложность: Средне

Некоторые основные дистрибутивы «наряжаются» в модные графические экраны во время загрузки, наполненные анимацией и прочими «рюшечками». (они отображаются после загрузки ядра, но до появления приглашения входа в систему). Это может добавить несколько секунд к загрузке — больше всего для Red Hat, Fedora и CentOS - так что, если вы не хотите этого, то стоит их заблокировать. Как и для большинства советов, касающихся стартовых скриптов, существует много различий от дистрибутива к дистрибутиву. В Red Hat и Fedora удалите rhgb из строк ядра в /boot/grub/grub.conf. В SUSE установите splash=0 и vga=normal в конфигурационном файле загрузчика. В Mandriva вы можете запретить графику с помощью Control Center, который удалит строку splashimage в /boot/grub/grub.conf.

ЗАГРУЗКА. Загружайтесь молниеносно

ПО: InitNG • Сложность: Сложно

Многие дистрибутивы запускают свои службы последовательно, что может «съедать» время. Почему бы не загрузить группу сервисов, пока один из них ожидает чего-либо InitNG загружает сервисы параллельно; то есть, он не позволяет одному сервису задерживать другие, и время загрузки может сократиться на 50 % и даже больше.

Hедостатком InitNG является то, что он пока еще не слишком хорошо работает с некоторыми дистрибутивами, и все еще активно развивается. Тем не менее, ситуация быстро улучшается, так что если вы хотите попробовать его (и готовы «поколдовать» в командной строке).

ЗАГРУЗКА. Перезагружайтесь быстро

ПО: Suspend • Сложность: Сложно

Многие ноутбуки поддерживают спящий режим, в котором содержимое оперативной памяти перед выключением сохраняется на жестком диске. Этот образ готов для последующего запуска без исполнения всей процедуры загрузки. Запущенные программы сохраняются в том состоянии, в каком окажутся при следующем включении компьютера. Программный пакет Suspend — это «заплатка» к ядру, предоставляющая эту возможность для любого компьютера. загрузить это расширение к ядру можно с http://www.suspend2.net вместе со сценарием поддержки спящего режима. Затем вы должны будете пересобрать и установить ваше ядро, после чего сможете «усыплять» и восстанавливать сеанс работы в любой момент, пропуская полный процесс загрузки.

РАБOЧИЙ СТОЛ. Измените менеджер окон в Gnome

ПО: Metacity • Сложность: Легко

Хотя оконный менеджер Metacity, используемый по умолчанию в Gnome, считается «легковесным», есть различные «тонкие» альтернативы, которые не требуют столько памяти и меньше нагружают процессор. один из лучших — Openbox (http://icculus.org/openbox ), который вы сможете найти на нашем диске. Имея великолепные возможности переназначения клавиш и настраиваемое поведение мыши в крохотном пакете, Openbox полнофункционален и очень прост в использовании.

Чтобы заменить Metacity, скомпилируйте и установите Openbox. Затем в Gnome запустите openbox --replace в окне запуска программ (Run, вызывается по Alt+F2). Это переключит оконный менеджер. чтобы сделать изменение постоянным, выберите Save Session при выходе. Попробуйте также еще более легкую замену — Oroborus (http://www.oroborus.org).

РАБOЧИЙ СТОЛ. Запускайте приложения KDE быстрее в других оконных менеджерах

ПО: KDE • Сложность: Легко

Oдин популярный вариант ускорения — запуск «легкого» оконного менеджера, под которым работают ваши любимые приложения. Oднако, запуская множество KDE-программ, скажем, под Fluxbox, вы заметите, что запуск затягивается. Дело в том, что каждый раз, запускаясь вне своего «родного» окружения приложение KDE подгружает множество библиотек и процессов, необходимых для его работы.

К счастью, есть простой способ обойти эту проблему. В своем оконном менеджере откройте терминал и введите kdeinit. Это приведет к загрузке большей части KDE-инфраструктуры без смены вашего оконного менеджера, и программы KDE будут запускаться заметно быстрее. Вы можете поместить вызов kdeinit в стартовый сценарий вашего оконного менеджера, чтобы он выполнялся автоматически.


Пол считает…

«Когда вы запускаете kdeinit, он загружает все фоновые сервисы KDE, так что вы можете запросто запустить KDE! Или (кхе-кхе) Gnome…»

РАБOЧИЙ СТОЛ. Увеличьте производительность системы X11 при работе в сети

ПО: X11, lbxproxy • Сложность: Легко

Если вы запустите систему X Window по сети Ethernet, вы не получите высокой производительности. Впрочем, через коммутируемые и прочие медленные соединения работать еще менее приятно, и зачастую настолько медленно, что их практически невозможно использовать. Вот действительно быстрое решение: Low Bandwidth X (LBX) Proxy. Программам на вашем компьютере не нужно знать о расширении LBX, но они подключаются к этому прокси-серверу, который выполнит оптимизацию работы X-протокола. Это совершенно «гладкое» решение.

lbxproxy поставляется со многими вариантами X.org или предоставляется как отдельное расширение. Установите его и почитайте справочное руководство (man lbxproxy) для получения дополнительной информации о его работе. Также хорошая идея просмотреть имеющиеся настройки на предмет того, какие параметры оптимизации и методы сжатия можно отключить, если они вызовут проблемы с тем или иным приложением.


РАБOЧИЙ СТОЛ. Подумайте о FVWM

ПО: FVWM • Сложность: Средняя

KDE и Gnome предоставляют превосходные рабочие столы и дают вам все, что вы только можете захотеть. Тем не менее, их загрузка отнимает драгоценное время, а сами они расходуют очень много оперативной памяти. Если у вас старый ПК (или новый, который вы хотите заставить работать быстрее), тогда переключение в «легкий» оконный менеджер сократит расходование памяти, и даже снизит время, требуемое для входа в систему. Если вы воспользуетесь FVWM, вы также найдете его неправдоподобно простым в настройке, при том, что он предоставит вам все необходимое. Смотрите http://www.fvwm.org.

РАБOЧИЙ СТОЛ. Ускорьте запуск приложения до 50 %

ПО: prelink • Сложность: Сложно

Oдной из проблем приложений является то, что они зависят от другого запущенного ПO. Когда приложение обращается к некой библиотеке, специальные символы перемещаются из библиотеки в область памяти этого приложения. К сожалению, этот процесс копирования (называемый динамической компоновкой) может отнимать довольно много времени.

Hа большинстве систем библиотеки редко изменяются, и когда программа запускается, процесс передачи этих символов каждый раз один и тот же. Специальный инструмент, носящий имя prelink, использует это повторение, чтобы выполнить компоновку один раз и сохранить результат этого процесса в исполняемый файл. Этот метод может значительно улучшить производительность, в частности, программ, разрабатываемых на C++. некоторые программы KDE запускаются на 50 % быстрее. prelink есть на нашем диске, а полное руководство можно найти по адресу http://www.crast.us/james/articles/prelink.php.

РАБOЧИЙ СТОЛ. Запускайте приложения Gnome за пределами рабочего стола быстрее

ПО: Gnome, различные оконные менеджеры • Сложность: Легко

Этот пункт использует похожие принципы, что и совет № 11. Если вы запускаете «легкий» оконный менеджер, такой как Window Maker, приложения Gnome потребуют больше времени для старта, поскольку они подгружают солидный объем поддерживающей Gnome инфраструктуры (такой, как печально известный gconfd). но есть хороший способ смешать некоторые первоклассные программы Gnome со стройным оконным менеджером: просто запустите маленькое приложение Gnome в начале сеанса работы — gedit или gcalctool, например, — и сверните его, не закрывая. Другие приложения Gnome будут запускаться заметно быстрее, и даже если gedit/gcalctool будет помещен в область подкачки, это по-прежнему будет быстрее, чем загрузка с нуля.

РАБOЧИЙ СТОЛ. Настройте визуальные эффекты KDE

ПО: KDE, kcontrol • Сложность: Легко

KDE включает обширный набор косметических средств, многие из которых можно заблокировать для значительного увеличения производительности. Ваш первый пункт назначения — KDE Control Center, и панель установок Style в разделе Appearance & Themes. Переключившись на вкладку Effects, вы можете отключить анимацию или прозрачность меню наряду с другими эффектами, «напрягающими» процессор. блокировка графической заставки даст некоторое увеличение скорости загрузки, в то время как избавление от сглаженных (anti-aliasing) шрифтов и сложного изображения в качестве фона также поможет в плане снижения нагрузки на процессор и память. Заодно проверьте опцию Translucency (Прозрачность) в разделе Window Behavior (находится в списке установок Desktop) в KDE Control Centre.

РАБOЧИЙ СТОЛ. Bыбирайте дистрибутивы старой школы

ПО: — • Сложность: Средне

Если у вас старый компьютер (такой, как Pentium I), постарайтесь не прельщаться этими шикарными, «раскрученными» новыми дистрибутивами, которые рассматриваются в последнем выпуске журнала Linux Format. они выглядят привлекательно, и вы можете попробовать установить их, но вы обнаружите, что ваш ПК станет практически неработоспособным. Hет, вам нужно смотреть на вашу коллекцию старых выпусков. Hайдите в ней Slackware 10.0. Выудите из ящика комода копию SUSE 7.1. Да, вы конечно можете установить новейшую версию, но, откровенно говоря, у вас нет для этого требуемой памяти или мощности процессора. Другой ответ, конечно, — пойти в магазин и купить новый компьютер. но действительно ли это более простой путь

РАБOЧИЙ СТОЛ. Используйте мышиные «жесты» при работе в KDE

ПО: KDE • Сложность: Легко

«Жест» — это просто движение, сделанное мышью, когда нажата определенная ее клавиша. он может быть достаточно простым, например, перемещение мыши слева направо. Вы можете также создавать свои собственные, более сложные жесты, например, круг или зубец пилы. Жесты используются в основном для переходов между страницами в web-браузере, но с KDE вы можете перемещаться по вашей файловой системе или управлять определенными программами, используя Konqueror.

Жестами можно заменить любую клавиатурную команду. Oни создаются и управляются из KDE Control Center в модуле, обозначенном как KHotkeys. Сперва нужно включить их на вкладке General Settings, затем создать ваши собственные жесты в списке My Actions в главном окне (жесты по умолчанию никогда, кажется, не включены).

РАБOЧИЙ СТОЛ. Cделайте Nautilus быстрее

ПО: Nautilus • Сложность: Легко

Nautilus, файловый менеджер Gnome, сидел на строгой «диете» последние несколько лет, превратившись из зыбкой массы кода в респектабельную, слегка требовательную к ресурсам программу. но вы все еще можете ускорить его работу, изменив несколько настроек в диалоге Preferences (располагается в меню Edit). Hа вкладке Preview установите значение Never для всех параметров — окна обозревателя файлов будут не столь красивы, но зато Nautilus не будет пытаться прочитать каждый файл для отображения его уменьшенной копии. По умолчанию, Nautilus не делает этого для сетевых файлов, но вы заметите эффект и на ваших локальных файлах.

ПРИЛОЖЕНИЯ. Настройте производительность системы подкачки Gimp

ПО: Gimp • Сложность: Легко

Gimp использует свою собственную мини-систему для подкачки — другими словами, он помещает содержимое памяти на жесткий диск, когда к нему нет обращений некоторое время или наблюдается нехватка ресурсов. Hастройка Tile Cache определяет, сколько памяти следует использовать, прежде чем начнется временное сохранение на диск, и обычно устанавливается как 64 Мб по умолчанию. Перейдите в File > Preferences > Environment для изменения этого значения. Если вы часто редактируете большие файлы без запуска большого числа других приложений в это же самое время, установите этот параметр примерно как половину вашей оперативной памяти для простого, но эффективного увеличения скорости работы.

ПРИЛОЖЕНИЯ. Bыполняйте предварительную загрузку Konqueror

ПО: Konqueror • Сложность: Легко

Файлы KDE и web-браузер могут быть предварительно загружены в фоновом режиме, так что каждый новый экземпляр Konqueror загружается почти мгновенно. Эта тактика позаимствована у Microsoft Windows, и она весьма эффективна, поскольку пользователи загружают Konqueror во время работы много раз. Hужная настройка находится в Konqueror на странице Performance, доступной из окна Configuration. Вы можете выбрать число экземпляров, которые хотите загружать предварительно, и отдельный экземпляр, который должен быть всегда доступен. Значение по умолчанию — три, что является типичным выбором, но это зависит от вашей тактики работы. Вы можете увеличить или уменьшить это число, но помните, что чем оно больше, тем меньше свободной памяти остается для сетевых файлов; также это оказывает влияние и на локальную работу.

ПРИЛОЖЕНИЯ. Запускайте OpenOffice.org быстрее

ПО: OpenOffice.org • Сложность: Легко

Удивительно мощный сам по себе, OpenOffice.org все еще загружается непомерно долго. некоторые усилия были приложены, чтобы повысить скорость процесса загрузки в версии 2.0, но без каких-либо заметных результатов. Приятно, однако, что пара проектов предоставляет быстрое решение этой проблемы, удерживая компоненты ядра OpenOffice.org постоянно в памяти. Так что, когда вы запускаете Writer или Calc, большинство из офисного пакета уже загружено в память, и окна открываются за две секунды вместо 20. Это не идеальное решение, но оно значительно улучшает производительность. Доступно два инструмента для быстрого запуска, оба можно найти на нашем диске: для Gnome, http://ooqstart.sourceforge.net ; и для KDE, http://segfaultskde.berlios.de/index .


ПРИЛОЖЕНИЯ. Работайте быстрее с Firefox

ПО: Mozilla Firefox • Сложность: Средне

Firefox быстр, но если вы используете широкополосное подключение, вы можете сделать его еще быстрее. Xитрость заключается в том, чтобы увеличить число запросов, которые могут быть выполнены одновременно. Это эквивалентно работе многопроцессорной системы, и означает, что браузер может загружать что-то другое, пока ожидает ответа на предыдущие запросы. Чтобы использовать эту особенность, введите about:config в поле адреса Firefox; вы должны получить длинный список параметров. Чтобы изменить значение параметра, выполните двойной щелчок по строке с ним. network.http.pipelining и network.http.proxy.pipelining требуется установить в True, и выставить значение network.http.pipelining.maxrequests (величина от 20 до 30 работает достаточно хорошо).

ГРЭХЭМ СЧИТАЕТ…

«Остерегайтесь того, что некоторые web-серверы не поддерживают конвейерную обработку. Если вы получаете ошибки, отключите эту настройку и вновь включите позже.»

ПРИЛОЖЕНИЯ. Переключитесь на IMAP

ПО: почтовые клиенты • Сложность: Средне

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

Как Evolution, так и KMail умеют работать с папками IMAP, и если ваш провайдер поддерживает этот протокол, то это просто вопрос смены сервера. Если вы подписаны на большое число списков рассылки, использование IMAP убережет вас не только от закачки всех этих сообщений, но также от перегрузки процессора во время сортировки почты.

ПРИЛОЖЕНИЯ. Устраните «зависания» браузера

ПО: все web-браузеры • Сложность: Легко

Время от времени вы посещаете web-страницу, и кажется, что она будет загружаться вечно, или просто останавливается и никогда не завершает свою загрузку. Проблема часто возникает потому, что web-страница содержит картинку, кнопку или рекламу с другого сервера, до которого ваш браузер не может быстро добраться.

Вы можете «закоротить» этот процесс, так что никогда не войдете в контакт с проблемными внешними сайтами (то есть обслуживающими эти изображения и рекламу). Если ваш браузер зависает в состоянии «Looking up <имя сайта>» или «Waiting for <имя сайта>», и этот сайт является внешним по отношению к тому, который вы посещаете, откройте ваш файл /etc/hosts и добавьте в него строку, которая определит проблемный web-сайт так, что он будет указывать на IP-адрес вашего компьютера (localhost):

127.0.0.1 www.someadvertisementsite.com

Теперь основной сайт должен загружаться быстро — когда ваш браузер попытается получить доступ к рекламе с внешнего сайта, он ничего не получит и двинется дальше.

ПРИЛОЖЕНИЯ. Придайте Metacity дополнительную скорость

ПО: Metacity • Сложность: Легко

По умолчанию Metacity (оконный менеджер Gnome) включает довольно безобразную анимацию при минимизации окна вместе с несколькими другими графическими эффектами, которые можно отключить для повышения скорости. Вы можете сделать это с помощью gconf-editor — обычно его можно найти в меню Applications в разделе System Tools, под названием Configuration Editor. Пройдите в Apps > Metacity > General и поставьте «галочку» Reduced_resources.

Искаженная анимация при сворачивании исчезнет, так же как и прозрачность при изменении размера и перемещении (хорошая экономия процессорных ресурсов на старых компьютерах). Чтобы вернуться к прежнему поведению, просто снимите установленный флажок в gconf-editor — изменения вступят в силу немедленно.

ПРИЛОЖЕНИЯ. Измените приоритеты ваших процессов

ПО: все приложения • Сложность: Средне

Иногда кажется несправедливым, что одна программа эксплуатирует процессор излишне интенсивно, особенно если это что-то такое, что вы хотели бы запустить «тихо», в фоновом режиме, пока вы делаете другую работу. Есть способ изменить приоритеты процессов, который может значительно повысить скорость ваших часто используемых программ: nice. запустив nice -n <число> <программа> в командной оболочке, вы можете задать указанной программе приоритет; число должно лежать в диапазоне от −20 (наивысший) до 19 (низший). Только root может запускать программы с отрицательным (наивысшим) приоритетом. Аналогично, вы можете изменить приоритет, запустив программу renice. Смотрите man nice и man renice для получения дополнительной информации, а также top, чтобы увидеть текущие приоритеты процессов.

ПРИЛОЖЕНИЯ. Cэкономьте время поиска в Firefox и Konqueror

ПО: Mozilla Firefox, Konqueror • Сложность: Легко

Вы можете сэкономить значительно времени, используя функции быстрого поиска в этих браузерах. быстрый поиск производится в том же поле, которое вы используете для ввода адреса сайта. В Konqueror, например, ввод «gg:linux format» вызовет поиск в Google информации о вашем любимом журнале. Если вы замените gg на ggi, вы будете вместо этого искать в Google Images. Другие интересные префиксы для Konqueror включают dict для поиска в электронном словаре Merriam-Webster, thes — для поиска тезаурусов, wp — для поиска на страницах Wikipedia. Вы можете добавить свое собственное направление поиска в окне конфигурации. В Firefox это работает аналогично, с тем исключением, что он использует слегка другой синтаксис. чтобы выполнить поиск в Google, просто введите «g linux format» в строке адреса.

Ключевое слово или буква, которые вы используете для поиска, можно изменить, щелкнув правой кнопкой мыши на закладке, соответствующей сайту и выбрав Properties.

ПРИЛОЖЕНИЯ. Cоздайте привязку клавиш в Gnome

ПО: gconf-editor • Сложность: Средне

Вы можете создавать горячие клавиши, чтобы запускать ваши любимые приложения из Gnome без блуждания по меню. Вызовите gconf-editor (обычно располагается в разделе System Tools меню Application), и пройдите в Apps > Metacity > Global_keybindings. Вместе с клавишами по умолчанию для оконных операций там есть несколько пронумерованных элементов run_command. Добавьте вашу привязку к одной из них, включив keybinding_commands в расположенном слева дереве и введя нужную команду (соответствующую номеру) справа. Вы можете, например, назначить для комбинации Ctrl+Alt+F вызов браузера Firefox.

ПРИЛОЖЕНИЯ. Подключайтесь к сети мгновенно

ПО: ifplugd • Сложность: Средне

ifplugd (есть на нашем диске) — это служба, которая наблюдает за вашим соединением Ethernet, проверяя, работает оно или отключено. Подключите кабель к сети, и ifplugd настроит интерфейс, возможно с помощью DHCP (включается отдельно). Oтключите кабель, и ifplugd заблокирует интерфейс. Это превосходная утилита для ноутбуков и рабочих станций, которые часто меняют свои сетевые подключения.

Утилита ifplugd просто проверяет ваш сетевой интерфейс(ы) на предмет наличия «пульса» соединения, сообщающего о работоспособности сетевого подключения. Когда «пульс» появляется, ifplugd активирует («поднимает») интерфейс и настраивает его для работы. Когда «пульс» пропадает (вы отключили кабель), ifplugd переводит интерфейс в состояние «down».

Смотрите документацию в исходных кодах или на сайте http://0pointer.de/lennart/projects/ifplugd для получения детальной информации по использованию программы.

ПРИЛОЖЕНИЯ. Ускорьте загрузку OpenOffice.org

ПО: OpenOffice.org • Сложность: Легко

Если совет № 22 вам не подходит, есть другой способ сократить тревожно долгую загрузку OpenOffice.org. Вызовите одну из программ (например, Writer), откройте меню Tools и выберите Options (внизу). В меню OpenOffice.org есть раздел Memory. В Graphics Cache измените параметры Use For OpenOffice.org до значения 30 Мб и Memory Per Object до 2.0 Мб. Последующие вызовы должны стать заметно быстрее — мнение пользователей различается, но многие находят этот способ крайне эффективным. Примените этот подход совместно с советом № 22, чтобы сделать скорость загрузки действительно приемлемой.

ПРИЛОЖЕНИЯ. Cделайте прорисовку в Firefox быстрее

ПО: Mozilla Firefox • Сложность: Легко

Oбычно Firefox выдерживает небольшую паузу, когда загружается страница, прежде чем она начнет отображаться на экране. Это делается, чтобы гарантировать загрузку большинства структурных компонентов, в противном случае экран будет дергаться и видоизменяться по мере подгрузки данных, создавая довольно неприятные эффекты. С другой стороны, это отнимает некоторое времени, и вы можете ускорить загрузку, настроив соответствующий параметр. В строке адреса введите about:config. Hам нужно создать новый параметр, щелкнув правой кнопкой мыши на списке, выбрав New и Integer и введя «nglayout.initialpaint.delay» в качестве имени. Также потребуется задать значение «0». Теперь страницы будут прорисовываться немного быстрее.

ПРИЛОЖЕНИЯ. Придайте темп Eclipse

ПО: Eclipse • Сложность: Легко

Есть множество способов, которыми вы можете улучшить производительность IDE Eclipse. Hа старых компьютерах это будет очень эффективным решением – временами это животное достигает здоровенных размеров. Вы можете дать JVM больше памяти для работы (идеально, если ничего больше не будете запускать), используя командную строку Java. Попробуйте включить параметры -Xms96m -Xmx256m, чтобы определить минимум и максимум доступной памяти как 96 и 256 Мб соответственно. Блокировка опций Automatic Code Folding и Automatic Code Insight также может дать вашему компьютеру повышение «октанового числа» – войдите в окно Preferences из меню Window, выберите Java > Editor, затем снимите флажок с  Enable Auto Activation везде на вкладке Folding.

БАЗЫ ДАННЫХ. Настройте разделяемые буферы PostgreSQL

ПО: PostgreSQL, Konqueror • Сложность: Легко

Pазделяемые буферы (shared buffers) – это блоки памяти, используемые для хранения результатов, пока ядро может формировать ответ и управлять данными. По умолчанию, этот параметр совсем небольшой и может быть увеличен для получения лучшей производительности – но если он слишком высок, это может дать противоположный эффект. Oптимальное значение зависит от вашей конфигурации: 4 Мб (512 разделяемых буферов подойдет для компьютера разработчика; от 16 до 32 Мб (от 2048 до 4096) хорошо работает на компьютере с объемом оперативной памяти от 256 до 512 Мб, использующем набор данных среднего размера; для систем высокого класса (1 Гб памяти и более) лучше установить что-то между 64 и 256 Мб (от 8192 до 32768 буферов).

БАЗЫ ДАННЫХ. Избегайте в MySQL-операторов lower и upper

ПО: MySQL • Сложность: Легко


При работе с MySQL избегайте использования операторов lower и upper в команде  select – они замедляют обработку запроса и совершенно не нужны. Oператор select в  MySQL не чувствителен к регистру символов: «select * from customers where surname=’jones’ возвратит точно такой же результат, что и «select * from customers where surname=’JONES’. Удивительно, но upper(surname) = ‘JONES’ трактуется точно так же, как и lower(surname) = ‘JONES’. Также старайтесь избегать использования шаблона (*) в операторе select (например, select * from mytable). Это кажется очень удобным, но запрос будет выполняться намного медленнее и  создавать дополнительный сетевой трафик. Вместо этого указывайте только те поля, которые вам действительно нужны, например: select email from customers where surname=’jones’.

БАЗЫ ДАННЫХ. Ускоренные запросы с индексами

ПО: большинство баз данных • Сложность: Средне

Hе забывайте добавлять индексы к таблицам в ваших базах данных. Правильно созданный индекс может дать заметную разницу во времени между запросами к  базе данных, отнимая доли секунды вместо десятков минут. Выберите поля, которые, как ожидается, будут запрашиваться. Hапример, для таблицы клиентов для  запросов имени и фамилии наиболее эффективно будет создание следующего индекса: create index ind_cust_name on customer(surname, firstname), конеч- но, с учетом реальных имен ваших полей и таблицы. Вам следует также принимать во внимание любые поля, которые вы используете в операторах join, поскольку замечательные сами по себе таблицы могут быть  крайне медленными «в паре».

Ник считает…

«Оптимизация базы данных – не самая интересная деятельность, но она в состоянии заметно увеличить скорость их работы.»

БАЗЫ ДАННЫХ. Заблокируйте fsync для повышения производительности диска

ПО: PostgreSQL • Сложность: Легко

В большинстве установок PostgreSQL опция fsync активирована, то есть сервер записывает каждую операцию непосредственно на диск. Это помогает поддерживать целостность базы данных в случае краха OС или ошибок оборудования, но это также замедляет работу. Oтключение fsync оставит операции записи на диск на совести операционной системы, которая кэширует данные и упорядочивает запись наиболее эффективным способом, обеспечивая тем самым большой скачок производительности. Если ваше оборудование или источник питания достаточно надежны, вы можете отключить fsync в конфигурационном файле PostgreSQL. Oсторожно выполняйте этот шаг, если ваш сервер часто отказывает или ваш источник питания непредсказуем, а вы не имеете ИБП!

БАЗЫ ДАННЫХ. Выбирайте правильный тип таблиц

ПО: MySQL • Сложность: Сложно

MySQL предлагает различные форматы таблиц для хранения данных, так что очень важно выбрать среди них наилучший для вашей частной задачи. По умолчанию в большинстве случаев используется MyISAM, предлагающий превосходную производительность, но не гарантирующий целостность транзакций. InnoDB несколько медленнее (примерно на 20% согласно результатам большинства общих тестов производительности), но включает вышеупомянутую поддержку транзакций. Тип Memory (ранее известный как Heap) предоставляет наивысшую производительность – однако, это ненадежный выбор.  CSV и Archive следует избегать, если только у вас нет специфических требований. В целом, MyISAM и InnoDB – наилучший выбор для поддержания высокой скорости.

СЕРВЕР. Скомпилируйте PHP с оптимизацией по скорости

ПО: PHP • Сложность: Средне

Xотя многие дистрибутивы предоставляют двоичные пакеты для PHP, вы можете получить некоторый выигрыш в скорости, собрав его из исходных кодов. Установки CFLAGS могут дать прирост на несколько процентов, но существуют параметры внутри скрипта ./configure, которые принесут гораздо больше пользы. Hаиболее важно удостовериться, что используется ключ --disable-debug, который позволяет отбросить отладочный код, более не нужный в системе. Также используйте параметр --enable-inline-optimization, который позволит PHP генерировать оптимизированный код. наконец, для PHP 4.20 и более новых версий хорошая идея – использовать ключ --enable-mm=shared (быстрая распределенная память для хранения сессий). Запустите ./configure --help, чтобы получить полный список опций сборки PHP.

СЕРВЕР. Используйте ReiserFS для почтовой очереди

ПО: различные почтовые серверы • Сложность: Сложно

Если у вас запущен почтовый сервер, обрабатывающий тысячи сообщений в день, то стоит выбрать подходящую файловую систему для размещения очереди. обычно ее монтируют в /var, так что форматирование /var под другой тип файловой системы  может снизить нагрузку. некоторые файловые системы Linux работают не очень быстро  с тысячами маленьких файлов в одном каталоге – следовательно, стоит перейти с ext2/ext3 (используются по умолчанию в большинстве дистрибутивов) на ReiserFS. Доказано, что эта файловая система более «подвижная», когда обрабатывается большое число маленьких файлов, и большинство основных дистрибутивов поддерживают ее в ядре, так что вам не придется заниматься тяжелой ручной работой для перехода на нее. Hа  сильно загруженных серверах вы заметите хороший прирост производительности.

СЕРВЕР. Cоздайте правильный баланс между клиентом и сервером

ПО: -- • Сложность: Средне

Если вы строите приложение типа «клиент-сервер», рассмотрите баланс загрузки между сервером и клиентом. Если вся работа выполняется на сервере, это замедлит работу приложения в целом, даже если клиентское ПO ничего не делает. Если вся работа возложена на клиента, это также может замедлить работу приложения. Pассмотрите использование процедур хранения в базах данных, или чтения данных из БД с последующей обработкой клиентом. Подумайте об этом на этапе разработки ПO, поскольку сперва вы не будете видеть проблем. они появятся только тогда, когда у вас будет множество пользователей, что вызовет заметную деградацию сервиса – но будет уже слишком поздно.

СЕРВЕР. Поддерживайте загрузку процессора с помощью параллельной компиляции кода

ПО: make • Сложность: Легко

Если вы работаете на многопроцессорной системе (SMP) с умеренным объемом памяти (скажем, 512 Мб), вы можете получить значимый выигрыш от выполнения параллельных процессов make во время сборки кода. В сравнении с последовательной сборкой, когда запускается один make (так как это происходит по умолчанию), параллельная сборка дает заметные улучшения. Чтобы сообщить make о возможности запускать для компиляции более одного дочернего процесса, используйте ключ -j:

# make -j4; make -j4 modules

Hекоторые программы не рассчитаны для выполнения параллельной сборки и могут завершиться ошибкой, если некоторые части проекта будут собраны вперед вышестоящих зависимостей. Если вы сталкиваетесь с ошибками сборки, самое безопасное – просто повторить все с самого начала без опции -j.

Персональные инструменты
купить
подписаться
Яндекс.Метрика