Подтвердить что ты не робот

Оптимизация разработки Виртуальная машина

В качестве наилучшей практики я использую виртуальную машину для своего развития - я хотел бы как можно больше попытаться оптимизировать свою виртуальную машину. Все, что я установил, - это сервер 2003, IIS и Visual Studio 2008. Что вы делаете для оптимизации своей виртуальной машины? Какую услугу вы отключите и т.д....

4b9b3361

Ответ 1

Ixclude мою папку сборки из моей защиты от вирусов для проверки доступа

Это службы, которые я отключил в своей виртуальной машине

  • Отключено Отключение событий завершения работы
  • Отключено индексирование на c:\
  • Служба отчетов об ошибках отключена.
  • Доступ к смарт-карте отключен.
  • Помощник NetBIOS TCP/IP
  • Диспетчер сеансов справки удаленного рабочего стола
  • Удаленный реестр
  • Источник бесперебойного питания
  • Windows Audio
  • Конфигурация беспроводной нулевой точки

Ответ 2

Как всегда, нет единого набора рекомендаций, которые универсально "правильны" или "лучше". Тем не менее, это некоторые из элементов, которые хорошо работали для моей разработки виртуальных сред.

Советы по оборудованию


Много памяти!

Определите, сколько памяти требуется каждой из ваших виртуальных машин и сколько памяти требуется вашему хосту (если вы одновременно запускаете вещи в хосте). Добавьте общее количество требований к памяти для всех виртуальных машин, которые будут работать одновременно, и определите максимальную загрузку ОЗУ VM и добавьте нагрузку на хост. Я предлагаю иметь по меньшей мере 512 МБ "отступов"

Например, мне нужно около 768 МБ для ОС хоста (WinXP Pro SP3) и около 1 ГБ в моей гостевой ОС (WinXP Pro SP3 с Visual Studio 2005/2008 и SQL Server Developers Edition). 1024 МБ + 768 МБ + 512 МБ = 2,3 ГБ

Лично, поскольку оперативная память сейчас невероятно дешевая, я просто увеличил свою 32-битную систему с 4 ГБ (3,5 адресуемый).

Отдельный шпиндель для вашей ОС и виртуальных машин

У вас есть диск, отдельный от вашего диска ОС, для запуска изображений вашей виртуальной машины. Это значительно уменьшает конкуренцию ввода-вывода на диске между хостом и гостями.

ПРИМЕЧАНИЕ: Использование внешнего жесткого диска для получения отдельного шпинделя может помочь, но будьте осторожны - Firewire и USB имеют более высокую задержку, чем IDE, SATA или SCSI! В то время как интерфейсы USB 2.0 и Firewire имеют более чем достаточную пропускную способность для максимальной пропускной способности диска, они добавляют значительную задержку для каждой операции. Это становится очень важным в транзакции с высоким диском, небольшие файлы получают доступ к ситуациям, подобным компиляции С++. У меня еще не было возможности запускать некоторые тесты на eSATA, но я понял, насколько хорошо он работает в сравнении с временем доступа к SATA.

Использовать диски с низким временем доступа

Во время разработки существует довольно немного случайного доступа к диску, особенно во время компиляции на таких языках, как С++. Использование 7200 об/мин над диском 5400RPM для ваших виртуальных машин сокращает время доступа и, следовательно, сокращает время компиляции. Переход на SSD на 10000 об/мин или на высокопроизводительный SSD уменьшает это время. Точка уменьшения отдачи зависит от конкретной нагрузки/шаблонов доступа к диску вашей среды.

Советы хоста


Отключить сканирование вирусов виртуального компьютера

Сообщите вашему антивирусному сканеру игнорировать ваш каталог виртуальной машины или расширение файла .vmdk, чтобы он не постоянно сканировал ваши диски виртуальной машины.

Избегайте конкуренции процессора

Если одновременно вы запускаете более одной виртуальной машины или выполняете работу как в хосте, так и гостевой ОС, сохраните как минимум 1 процессор для ОС хоста на многоядерной/proc-машине. Например, если вы используете две виртуальные машины и не выполняете работу в ОС хоста, то двухъядерный процессор на хосте с одноядерными виртуальными машинами, вероятно, будет служить вам лучше всего.

Если вы используете единую виртуальную машину и не работаете с ОС хоста, то использование виртуальной машины с двумя процессорами может быть полезно, если приложения виртуальной машины могут использовать второй процессор.

Если вы запускаете две виртуальные машины: 1, которая является одиночной, и 1, которая является двойной proc, вероятно, вам нужно запустить четырехъядерную систему.

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

Советы для гостей


Выделить достаточную память

Убедитесь, что вы выделяете достаточное количество ОЗУ для покрытия потребности в виртуальной машине

Избегайте использования моментальных снимков

Не используйте моментальные снимки, если вам это действительно нужно. Существует значительный дисковый ввод-вывод, связанный с поддержкой файловой системы виртуальной машины на основе моментальных снимков.

Не запускайте ненужные службы

Например:

  • Индексация
  • Восстановление системы
  • Отчеты об ошибках
  • Конфигурация беспроводной нулевой точки

Не запускайте программное обеспечение безопасности

Рассмотримне запускать антивирусное, антишпионское или брандмауэр-программное обеспечение в вашей виртуальной машине. Вам придется взвесить преимущества/недостатки безопасности против скорости здесь. Для многих, если они получают вирус, это не проблема, они просто восстанавливают предыдущую копию или моментальный снимок. Для других потенциальная подверженность конфиденциальной информации требует строгих политик безопасности даже внутри виртуальной машины.

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

Дефрагментация!

К сожалению, в конфигурации виртуальной машины может произойти фрагментация файлов в трех местах: внутри файловой системы гостевой ОС, в представлении виртуальной машины (например, vmdk) виртуальной машины и файла виртуальной машины на самом физическом диске. Порядок, в котором вы дефрагментируете каждый вопрос.

  • Сначала дефрагментируйте файловую систему в гостевой ОС (например, запустите дефрагментацию диска в гостевой ОС или используйте инструмент JkDefrag или Defraggler и т.д. в гостевой ОС)
  • Во-вторых, дефрагментируйте файл виртуальной машины (например, VMDK) с помощью таких инструментов, как vmware-diskmanager
  • В-третьих, дефрагментируйте файловую систему на хосте, который содержит файл виртуальной машины (т.е. запустите дефрагментацию диска на ОС хоста)

Ответ 3

Я отключу индексатор файловой системы, экономя дисковое пространство и время процессора.

Ответ 4

Я всегда отключаю "Восстановление системы" на своих виртуальных ПК под управлением Windows XP.

Ответ 5

Помещение образа диска на внешний жесткий диск (даже USB) может повысить производительность (специально для ноутбука)

Ответ 6

Существует отличная статья о производительности виртуальной машины здесь

Он написан конкретно о виртуальных машинах Sharepoint, но есть множество советов, которые применяются в целом.

Ответ 7

Я отключу файл страницы Windows при использовании VMware Server. Disk IO является самой слабой связью с сервером VMWare, и ничто не хуже, чем пейджинговая виртуализованная оперативная память для виртуального диска. Дайте вашей виртуальной машине достаточную память, и это работает очень хорошо.

Кроме того, не все решения для виртуализации работают одинаково в разных областях. VMware отлично подходит для стабильности и мобильности изображений VM, но вы можете попробовать другие решения, если у вас есть время. Я обнаружил, что более высокая производительность ввода-вывода на диске дает мне лучший общий опыт, поэтому я лучше оценил производительность процессора (и, в целом, стабильность) сервера VMware для лучшей производительности IO VirtualBox. Несвободные версии VMware могут быть намного лучше, но я понятия не имею.

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

Одна вещь, которая действительно убивает производительность IO, работает с активным моментальным снимком. Это использует стратегию копирования на запись для большинства реализаций, и вы можете ожидать снижения производительности диска на 20%.

Ответ 8

Недавно я создал виртуальную машину, и я начал ее оптимизировать, прежде чем я даже сделал установку, используя Nlite и Windows Update Downloader. NLite позволяет вам выделять все компоненты, которые вам не нужны (mspaint, pinball, french и т.д.), Применять все ваши обновления для Windows и настраивать параметры реестра и службы. Таким образом, вы можете отключить индексирование системы при первой загрузке. Если вы используете Vista или 2008 Vlite, также доступны.

Ответ 9

Два SSD, один для ОС хоста и один для виртуальных машин.