Прискорення і оптимізація роботи netbeans 7

До речі, хто ще не вибрав IDE для PHP. NetBeans може стати прекрасним безкоштовним варіантом. Я користуюся, поки задоволений.

Примітка: всі маніпуляції з NetBeans тестувалися тільки на версії 7.1 під Windows 7 Ultimate (JRE 7) з процесором AMD Athlon 215 і ОЗУ DDR2 4 гігабайти. Якщо у вас вийшов інший результат (наприклад, IDE стала ще більше гальмувати) можливо настройки не підходять вашій системі.

Спочатку потрібно з'ясувати, чому NetBeans гальмує? У процесі завантаження, я помітив, що саме повільне місце - завантаження модулів. Заходимо в меню «Сервіс» - «Модулі». Відкривається вікно з доступними, встановленими та іншими модулями. Вибираємо вкладку «Встановлено». Тепер ретельно переглядаємо, які модулі вам потрібні, і які ні. Відзначаємо непотрібні модулі, тиснемо «Деактивувати» і перезапускаємо середу. Видаляти не варто, важать вони мало і не займуть багато місця на жорсткому диску. У мене вийшов ось такий список:

Не знаю як щодо спільної роботи, але зате запуск прискорився пристойно. Та й тепер не потрібні модулі перестануть займати місце в ОЗУ.

Наступним кроком стала «прибирання» в системі. Досить таки велика фрагментація диска, куди встановлено NetBeans і невеликий безлад в проектах теж позначаються на продуктивність. Я видалив зайві файли і штатними засобами Windows (очищення диска і дефрагментації) упорядкував ОС. Після цього вінчестер став шуміти набагато менше при роботі з NetBeans.

Але цього замало. Приріст продуктивності під час написання коду я не відчув. Довелося почати копатися в настройках JRE для NetBeans. І я знайшов цікаву річ - достатня кількість певних параметрів, які можуть допомогти прискорити NetBeans.

Примітка: для активації параметрів (прапорів) запуску, їх потрібно просто додати в ярлик програми, наприклад ось так «C: Program Files (x86) NetBeans 7.1binnetbeans.exe» -J-Xms128m. де -J-Xms128m є прапором. Крім того, ці опції можна включити в конфіг файлі netbeans.conf.

  • Першим я вирішив розглянути ось цей -J-Xverify: none параметр. Він вказує JRE не виконувати перевірку байт-коду. Це призводить до більш швидкої завантаженні класів, а так само прибирає необхідність завантажувати класи тільки для того, що б їх перевірити.
  • Тепер розглянемо наступний прапор -J-Xms32m. Він встановлює значення початкового розміру купи в 32 мегабайта. Якщо у вас мало ОЗУ, і вам не критично час запуску то не використовуйте його. Документація по NetBeans стверджує, що за замовчуванням Xms включений, і його варто використовувати тільки в разі встановлення більшої, або меншої початкового розміру купи. Наприклад, такий -J-Xms64m.
  • Прапор -J-Xmx256m встановлює максимальний розмір пам'яті, який може виділити NetBeans. в даному випадку це 256 мегабайт. Що б встановити, наприклад 512 мегабайт, додайте прапор -J-Xmx512m. Розробники просять врахувати, що якщо встановити розмір більше, ніж доступно фізичної пам'яті виникнуть моторошні гальма і непередбачені ситуації. До речі, надмірне збільшення цього параметра, навіть при достатньому наявності ОЗУ не приведе до бажаного результату. Наприклад, я на своїй машині не бачу різниці між -J-Xmx512m і -J-Xmx1024m. Тому раджу вам поекспериментувати з цим прапором.
  • Якщо під час роботи у вас буває «заморозка» всього інтерфейсу і програма перестає відповідати на запити, але через кілька секунд все відновлюється, то спробуйте додати прапор -J-XX: + UseConcMarkSweepGC. За словами розробників, його слід використовувати, якщо збірка сміття викликає зупинку або зависання всього додаток. Можливо, це допоможе уникнути ось таких ось «фризів».
  • Дуже корисний прапор -J-XX: CompileThreshold = 100. встановлює кількість звернень до методу, після якого він буде скомпільовано в машинний код. Я виставив у себе
    -J-XX: CompileThreshold = 50. це може викликати більш довге завантаження середовища, але оскільки я не відкриваю IDE на 5 хвилин, а буває працюю там весь день, то компіляція методів в машинний код значно прискорить роботу як інтерфейсу так і самої програми.

Схожі пости:

Прискорення і оптимізація роботи netbeans 7
Корисні функції для роботи з масивами в PHP Системні виклики для роботи з файлами в Linux

Схожі статті