Приложение PHP извлекло бы выгоду из того, чтобы быть подаваемым от Электронного диска?

Вы могли использовать сценарий для получения информации от WMI (от technet):

... определить IP-адрес компьютера?

Используйте класс Win32_NetworkAdapterConfiguration и проверьте значение свойства IPAddress. Это возвращается как массив, так используйте Цикл foreach для получения значения. strComputer = "."

Set objWMIService = GetObject( _ 
    "winmgmts:\\" & strComputer & "\root\cimv2")
Set IPConfigSet = objWMIService.ExecQuery _
    ("Select IPAddress from Win32_NetworkAdapterConfiguration ")

For Each IPConfig in IPConfigSet
    If Not IsNull(IPConfig.IPAddress) Then 
        For i=LBound(IPConfig.IPAddress) _
            to UBound(IPConfig.IPAddress)
                WScript.Echo IPConfig.IPAddress(i)
        Next
    End If
Next

Печально это - код для локальной машины, и необходимо было бы настроить его в соответствии с этой статьей для соединения с удаленным WMI.

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

Или Вы могли запросить сервер DHCP непосредственно для получения информации (если это - MS, я могу запросить сервер DHCP для получения отображения MAC к IP-адресу (у меня есть права администратора)? должен работать),

2
задан 8 July 2012 в 09:22
4 ответа

Нет, виртуальный диск действительно повредит PHP (в сочетании с лучшими решениями, такими как ускоритель PHP).

Лучший способ повысить производительность PHP - использовать ускоритель PHP. Это модули, которые подключаются к веб-движку (например, apache httpd) и кэшируют скомпилированный байт-код сценариев PHP. Этот кеш затем сохраняется в оперативной памяти. В результате будущие вызовы сценария PHP вообще не поступают на диск, предварительно скомпилированный байтовый код извлекается из кеша. Это означает, что вы ничего не получите от использования ramdisk, а вместо этого в конечном итоге потребляете ramdisk, который можно было бы использовать в другом месте.

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

.

Вот две хорошие статьи в Википедии на эту тему:
Ускоритель PHP
Список ускорителей PHP

7
ответ дан 3 December 2019 в 08:35

Самая большая проблема PHP заключается в том, что для каждого запроса интерпретатор должен

  1. извлечь файл из файловой системы
  2. прочитать его
  3. преобразовать его в исполняемую форму
  4. выполнить

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

Я столкнулся с проблемой оптимизации большого набора вики-сайтов для организации Howtopedia ; после пресс-релизов газетные сообщения систематически доводили систему до 100%. Настройка APC всего с 25 МБ кеш-памяти снизила нагрузку на систему до менее 5%. Дальнейшая базовая настройка до уровня менее 1%.

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

Некоторые дополнительные советы для сценария, который вы можете description:

  • предоставьте APC сегмент кеша размером 25 МБ или более (убедитесь, что ваша ОС поддерживает сегменты SHM такого размера). Политика замены кеша, которую использует APC, гарантирует, что ваше наиболее запрашиваемое содержимое будет в кеше, так что это, вероятно, даст вам процент попаданий более 95%. Увеличение объема выделенной памяти дает экспоненциально менее значительные преимущества.
  • Для упомянутого в основном статического приложения отключите apc.stat, чтобы повысить производительность. Это позволяет APC искать файлы PHP непосредственно в кеше, без необходимости проверять работоспособность файловой системы, если они были изменены с момента последнего выполнения. Каждый запрос обслуживается полностью из памяти, файловая система никогда не достигается, что приводит к драматической производительности.
  • после запуска APC узкое место производительности может переместиться внутрь приложения. В частности, база данных и файловая система, если вы их используете. Memcached может помочь вам решить проблемы с относительно небольшими изменениями в коде вашего приложения.
2
ответ дан 3 December 2019 в 08:35

Я склонен думать, что если у вас есть машина с достаточным объемом ОЗУ, кэш диска ОС будет работать так же хорошо при кэшировании соответствующего контента (если не лучше, потому что он не будет кэшировать файлы, которые не используются), но вам следует протестировать его на тестовом сервере, убедившись, что вы действительно слишком сильно попадаете на диск (с помощью sar).

4
ответ дан 3 December 2019 в 08:35

Нет, не будет, если оперативная память уже является узким местом.

0
ответ дан 3 December 2019 в 08:35

Теги

Похожие вопросы