Нужен ли нам раздел подкачки на сервере LAMP?

Нужен ли нам раздел подкачки на ubuntu-сервере с LAMP? Я думаю, что мне это не нужно, но лучше знать наверняка, не вызовет ли это какое-то непредсказуемое поведение. На самом деле мои мысли были:

Сервер никогда не спящий. Если он меняет, нужно подумать о настройке баланса / трафике и т. Д. ...

Правильно ли я могу отключить своп для производственного сервера?

Спасибо!

13
задан 29 November 2010 в 18:17

46 ответов

Я должен не соглашаться с тем, чтобы иметь своп на производственных серверах.

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

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

Без свопа ваш LAMP-сервер просто уничтожит процессы, чтобы высвободить ОЗУ. Надлежащий мониторинг должен предупредить вас об этом и удалить серверы из производства, если будут убиты критические процессы. Хуже всего то, что ваши методы входа в систему полностью уничтожены, и вам нужно выполнить жесткий цикл перезагрузки / питания. Этот худший случай по-прежнему так же вероятен с помощью компьютера с отключенным контролем, но гораздо труднее обнаружить.

Если вы используете PHP, включите ограничения памяти и отслеживаете свои журналы для их сбоев. Вот трюк, установите лимит ниже на вашем сервере-разработчике, чем на производстве. Если вы используете mod_php под apache, установите MaxRequestsPerChild на несколько тысяч, чтобы штамп httpd не увеличивался с течением времени. Прежде всего, отслеживайте использование памяти! Часто память ползает со временем, и вам просто нужно периодически запускать негерметичную службу, когда вы отлаживаете проблему.

5
ответ дан 2 August 2018 в 04:13
  • 1
    Спасибо за обмен вашего опыта. Я занимался подобными проблемами, когда ssh принимал Inf. Я просто заставлял процессы иметь ограниченную память, что позволяло мне запускать ssh и исправлять багги-скрипты. – Arman 7 December 2010 в 12:12
  • 2
    Одна из самых интересных дискуссий о пространстве подкачки в производстве, которую я видел в Интернете. (целая нить, pro & amp; cons) – dpb 19 December 2013 в 01:04

Я должен не соглашаться с тем, чтобы иметь своп на рабочих серверах.

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

SSD swap - это особый случай и, по крайней мере, убивает систему. Тем не менее, записи все еще медленны, поэтому вы все равно будете ждать долгое и долгое время для восстановления из-за отсутствия контроля.

Без обмена ваш сервер LAMP просто убьет процессы, чтобы высвободить ОЗУ. Надлежащий мониторинг должен предупредить вас об этом и удалить серверы из производства, если будут убиты критические процессы. Хуже всего то, что ваши методы входа в систему полностью уничтожены, и вам нужно выполнить жесткий цикл перезагрузки / питания. Этот худший случай по-прежнему так же вероятен с помощью компьютера с отключенным контролем, но гораздо труднее обнаружить.

Если вы используете PHP, включите ограничения памяти и отслеживаете свои журналы для их сбоев. Вот трюк, установите предел ниже на вашем сервере-разработчике, чем на производстве. Если вы используете mod_php под apache, установите MaxRequestsPerChild на несколько тысяч, чтобы штамп httpd не увеличивался с течением времени. Прежде всего, отслеживайте использование памяти! Зачастую память ползет с течением времени, и вам просто нужно периодически запускать неаккуратную услугу, когда вы отлаживаете проблему.

5
ответ дан 4 August 2018 в 20:18

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

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

Я использую этот скрипт каждые полчаса в рабочей среде. Он отправит мне уведомление, если использование Swap! = 0k. Я буду в состоянии оперативно исследовать / предпринимать действия по этой проблеме, большую часть времени, , прежде чем все будет действительно неверно .

Ожидает, что вы : bash, top, echo, awk и рабочая почтовая команда без каких-либо проверок.

Надеюсь, что это поможет.

  #! / bin / bash CURRSWAP = $ (top -b -n1 | grep Swap | awk '{print $ 4}') ECOMM =  «echo $ CURRSWAP означает« здоровый », я не буду предпринимать никаких действий».  CURRDATE = $ (дата) MAILDST = "your@email.addr" case $ CURRSWAP в [0] k) $ ECOMM exit 0 ;;  *) echo -e "Сервер: $ HOSTNAME \n Дата: $ CURRDATE \n Текущее использование раздела свопинга: $ CURRSWAP" |  mail -s «Предупреждение от $ HOSTNAME» - $ MAILDST exit 0 ;;  выход esac 0  
0
ответ дан 4 August 2018 в 20:18

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

Эта ситуация будет происходить много раз на сервере.

a). Неоптимизированный сценарий может потреблять большой объем памяти b). Сценарии, такие как резервное копирование, всегда будут потреблять огромную память. C). тяжелый трафик

Итак, хорошая практика - иметь некоторое пространство подкачки.

Подробнее: https://help.ubuntu.com/community/SwapFaq

3
ответ дан 4 August 2018 в 20:18

Я должен не соглашаться с тем, чтобы иметь своп на рабочих серверах.

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

SSD swap - это особый случай и, по крайней мере, убивает систему. Тем не менее, записи все еще медленны, поэтому вы все равно будете ждать долгое и долгое время для восстановления из-за отсутствия контроля.

Без обмена ваш сервер LAMP просто убьет процессы, чтобы высвободить ОЗУ. Надлежащий мониторинг должен предупредить вас об этом и удалить серверы из производства, если будут убиты критические процессы. Хуже всего то, что ваши методы входа в систему полностью уничтожены, и вам нужно выполнить жесткий цикл перезагрузки / питания. Этот худший случай по-прежнему так же вероятен с помощью компьютера с отключенным контролем, но гораздо труднее обнаружить.

Если вы используете PHP, включите ограничения памяти и отслеживаете свои журналы для их сбоев. Вот трюк, установите предел ниже на вашем сервере-разработчике, чем на производстве. Если вы используете mod_php под apache, установите MaxRequestsPerChild на несколько тысяч, чтобы штамп httpd не увеличивался с течением времени. Прежде всего, отслеживайте использование памяти! Зачастую память ползет с течением времени, и вам просто нужно периодически запускать неаккуратную услугу, когда вы отлаживаете проблему.

5
ответ дан 6 August 2018 в 04:18

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

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

Я использую этот скрипт каждые полчаса в рабочей среде. Он отправит мне уведомление, если использование Swap! = 0k. Я буду в состоянии оперативно исследовать / предпринимать действия по этой проблеме, большую часть времени, , прежде чем все будет действительно неверно .

Ожидает, что вы : bash, top, echo, awk и рабочая почтовая команда без каких-либо проверок.

Надеюсь, что это поможет.

  #! / bin / bash CURRSWAP = $ (top -b -n1 | grep Swap | awk '{print $ 4}') ECOMM =  «echo $ CURRSWAP означает« здоровый », я не буду предпринимать никаких действий».  CURRDATE = $ (дата) MAILDST = "your@email.addr" case $ CURRSWAP в [0] k) $ ECOMM exit 0 ;;  *) echo -e "Сервер: $ HOSTNAME \n Дата: $ CURRDATE \n Текущее использование раздела свопинга: $ CURRSWAP" |  mail -s «Предупреждение от $ HOSTNAME» - $ MAILDST exit 0 ;;  выход esac 0  
0
ответ дан 6 August 2018 в 04:18

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

Эта ситуация будет происходить много раз на сервере.

a). Неоптимизированный сценарий может потреблять большой объем памяти b). Сценарии, такие как резервное копирование, всегда будут потреблять огромную память. C). тяжелый трафик

Итак, хорошая практика - иметь некоторое пространство подкачки.

Подробнее: https://help.ubuntu.com/community/SwapFaq

3
ответ дан 6 August 2018 в 04:18

Я должен не соглашаться с тем, чтобы иметь своп на рабочих серверах.

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

SSD swap - это особый случай и, по крайней мере, убивает систему. Тем не менее, записи все еще медленны, поэтому вы все равно будете ждать долгое и долгое время для восстановления из-за отсутствия контроля.

Без обмена ваш сервер LAMP просто убьет процессы, чтобы высвободить ОЗУ. Надлежащий мониторинг должен предупредить вас об этом и удалить серверы из производства, если будут убиты критические процессы. Хуже всего то, что ваши методы входа в систему полностью уничтожены, и вам нужно выполнить жесткий цикл перезагрузки / питания. Этот худший случай по-прежнему так же вероятен с помощью компьютера с отключенным контролем, но гораздо труднее обнаружить.

Если вы используете PHP, включите ограничения памяти и отслеживаете свои журналы для их сбоев. Вот трюк, установите предел ниже на вашем сервере-разработчике, чем на производстве. Если вы используете mod_php под apache, установите MaxRequestsPerChild на несколько тысяч, чтобы штамп httpd не увеличивался с течением времени. Прежде всего, отслеживайте использование памяти! Зачастую память ползет с течением времени, и вам просто нужно периодически запускать неаккуратную услугу, когда вы отлаживаете проблему.

5
ответ дан 7 August 2018 в 22:23

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

Эта ситуация будет происходить много раз на сервере.

a). Неоптимизированный сценарий может потреблять большой объем памяти b). Сценарии, такие как резервное копирование, всегда будут потреблять огромную память. C). тяжелый трафик

Итак, хорошая практика - иметь некоторое пространство подкачки.

Подробнее: https://help.ubuntu.com/community/SwapFaq

3
ответ дан 7 August 2018 в 22:23

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

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

Я использую этот скрипт каждые полчаса в рабочей среде. Он отправит мне уведомление, если использование Swap! = 0k. Я буду в состоянии оперативно исследовать / предпринимать действия по этой проблеме, большую часть времени, , прежде чем все будет действительно неверно .

Ожидает, что вы : bash, top, echo, awk и рабочая почтовая команда без каких-либо проверок.

Надеюсь, что это поможет.

  #! / bin / bash CURRSWAP = $ (top -b -n1 | grep Swap | awk '{print $ 4}') ECOMM =  «echo $ CURRSWAP означает« здоровый », я не буду предпринимать никаких действий».  CURRDATE = $ (дата) MAILDST = "your@email.addr" case $ CURRSWAP в [0] k) $ ECOMM exit 0 ;;  *) echo -e "Сервер: $ HOSTNAME \n Дата: $ CURRDATE \n Текущее использование раздела свопинга: $ CURRSWAP" |  mail -s «Предупреждение от $ HOSTNAME» - $ MAILDST exit 0 ;;  выход esac 0  
0
ответ дан 7 August 2018 в 22:23

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

Эта ситуация будет происходить много раз на сервере.

a). Неоптимизированный сценарий может потреблять большой объем памяти b). Сценарии, такие как резервное копирование, всегда будут потреблять огромную память. C). тяжелый трафик

Итак, хорошая практика - иметь некоторое пространство подкачки.

Подробнее: https://help.ubuntu.com/community/SwapFaq

3
ответ дан 10 August 2018 в 10:32

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

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

Я использую этот скрипт каждые полчаса в рабочей среде. Он отправит мне уведомление, если использование Swap! = 0k. Я буду в состоянии оперативно исследовать / предпринимать действия по этой проблеме, большую часть времени, , прежде чем все будет действительно неверно .

Ожидает, что вы : bash, top, echo, awk и рабочая почтовая команда без каких-либо проверок.

Надеюсь, что это поможет.

  #! / bin / bash CURRSWAP = $ (top -b -n1 | grep Swap | awk '{print $ 4}') ECOMM =  «echo $ CURRSWAP означает« здоровый », я не буду предпринимать никаких действий».  CURRDATE = $ (дата) MAILDST = "your@email.addr" case $ CURRSWAP в [0] k) $ ECOMM exit 0 ;;  *) echo -e "Сервер: $ HOSTNAME \n Дата: $ CURRDATE \n Текущее использование раздела свопинга: $ CURRSWAP" |  mail -s «Предупреждение от $ HOSTNAME» - $ MAILDST exit 0 ;;  выход esac 0  
0
ответ дан 10 August 2018 в 10:32

Я должен не соглашаться с тем, чтобы иметь своп на рабочих серверах.

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

SSD swap - это особый случай и, по крайней мере, убивает систему. Тем не менее, записи все еще медленны, поэтому вы все равно будете ждать долгое и долгое время для восстановления из-за отсутствия контроля.

Без обмена ваш сервер LAMP просто убьет процессы, чтобы высвободить ОЗУ. Надлежащий мониторинг должен предупредить вас об этом и удалить серверы из производства, если будут убиты критические процессы. Хуже всего то, что ваши методы входа в систему полностью уничтожены, и вам нужно выполнить жесткий цикл перезагрузки / питания. Этот худший случай по-прежнему так же вероятен с помощью компьютера с отключенным контролем, но гораздо труднее обнаружить.

Если вы используете PHP, включите ограничения памяти и отслеживаете свои журналы для их сбоев. Вот трюк, установите предел ниже на вашем сервере-разработчике, чем на производстве. Если вы используете mod_php под apache, установите MaxRequestsPerChild на несколько тысяч, чтобы штамп httpd не увеличивался с течением времени. Прежде всего, отслеживайте использование памяти! Зачастую память ползет с течением времени, и вам просто нужно периодически запускать неаккуратную услугу, когда вы отлаживаете проблему.

5
ответ дан 10 August 2018 в 10:32

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

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

Я использую этот скрипт каждые полчаса в рабочей среде. Он отправит мне уведомление, если использование Swap! = 0k. Я буду в состоянии оперативно исследовать / предпринимать действия по этой проблеме, большую часть времени, , прежде чем все будет действительно неверно .

Ожидает, что вы : bash, top, echo, awk и рабочая почтовая команда без каких-либо проверок.

Надеюсь, что это поможет.

  #! / bin / bash CURRSWAP = $ (top -b -n1 | grep Swap | awk '{print $ 4}') ECOMM =  «echo $ CURRSWAP означает« здоровый », я не буду предпринимать никаких действий».  CURRDATE = $ (дата) MAILDST = "your@email.addr" case $ CURRSWAP в [0] k) $ ECOMM exit 0 ;;  *) echo -e "Сервер: $ HOSTNAME \n Дата: $ CURRDATE \n Текущее использование раздела свопинга: $ CURRSWAP" |  mail -s «Предупреждение от $ HOSTNAME» - $ MAILDST exit 0 ;;  выход esac 0  
0
ответ дан 13 August 2018 в 17:01

Я должен не соглашаться с тем, чтобы иметь своп на рабочих серверах.

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

SSD swap - это особый случай и, по крайней мере, убивает систему. Тем не менее, записи все еще медленны, поэтому вы все равно будете ждать долгое и долгое время для восстановления из-за отсутствия контроля.

Без обмена ваш сервер LAMP просто убьет процессы, чтобы высвободить ОЗУ. Надлежащий мониторинг должен предупредить вас об этом и удалить серверы из производства, если будут убиты критические процессы. Хуже всего то, что ваши методы входа в систему полностью уничтожены, и вам нужно выполнить жесткий цикл перезагрузки / питания. Этот худший случай по-прежнему так же вероятен с помощью компьютера с отключенным контролем, но гораздо труднее обнаружить.

Если вы используете PHP, включите ограничения памяти и отслеживаете свои журналы для их сбоев. Вот трюк, установите предел ниже на вашем сервере-разработчике, чем на производстве. Если вы используете mod_php под apache, установите MaxRequestsPerChild на несколько тысяч, чтобы штамп httpd не увеличивался с течением времени. Прежде всего, отслеживайте использование памяти! Зачастую память ползет с течением времени, и вам просто нужно периодически запускать неаккуратную услугу, когда вы отлаживаете проблему.

5
ответ дан 13 August 2018 в 17:01
  • 1
    Спасибо за обмен вашего опыта. Я занимался подобными проблемами, когда ssh принимал Inf. Я просто заставлял процессы иметь ограниченную память, что позволяло мне запускать ssh и исправлять багги-скрипты. – Arman 7 December 2010 в 12:12
  • 2
    Одна из самых интересных дискуссий о пространстве подкачки в производстве, которую я видел в Интернете. (целая нить, pro & amp; cons) – dpb 19 December 2013 в 01:04

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

Эта ситуация будет происходить много раз на сервере.

a). Неоптимизированный сценарий может потреблять большой объем памяти b). Сценарии, такие как резервное копирование, всегда будут потреблять огромную память. C). тяжелый трафик

Итак, хорошая практика - иметь некоторое пространство подкачки.

Подробнее: https://help.ubuntu.com/community/SwapFaq

3
ответ дан 13 August 2018 в 17:01
  • 1
    Спасибо за объяснение. Если у вас есть глючный скрипт, то в любом случае вы будете разбивать сервер, системные ограничения должны контролировать ваши скрипты, не так ли? – Arman 29 November 2010 в 14:31
  • 2
    aneeshep, если вы меняете во время интенсивного трафика, ваша система будет на 100 раз медленнее, чем обычно. Это обычно неприемлемо. – SpamapS 6 December 2010 в 19:37

Другие вопросы по тегам:

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