Найти тему
ИТ разнообразно

Почему мы переводим (многие) наши серверы с Linux на FreeBSD. Часть 5.

Оглавление
Unsplash
Unsplash

Сетевой стек FreeBSD (по-прежнему) превосходит Linux, а зачастую и его производительность

Meta* годами пыталась довести производительность сетевого стека Linux до уровня FreeBSD. Многие зададутся вопросом: почему бы тогда не перенести сервисы во FreeBSD? Крупные компании с огромными центрами обработки данных не могут менять решения за одну ночь, а их технические специалисты любого уровня являются экспертами по Linux. Они очень много вложили в btrfs, в Linux, в их особенности. Понятно, что после приобретения Whatsapp они предпочли перевести "несколько" серверов Whatsapp на Linux и переместить их в свои центры обработки данных. Что касается реальной производительности системы (т.е. без учета тестов, которые полезны только до определенного момента), FreeBSD великолепна, особенно в условиях высокой нагрузки. Там, где Linux начинает задыхаться (например, в ожидании ввода-вывода) при 100% загрузке процессора, FreeBSD имеет меньшую загрузку процессора и место для других вещей. В реальном мире (с моими серверами и типами нагрузки) я иногда сталкивался с серьезным замедлением работы системы из-за интенсивного ввода-вывода, даже если обрабатываемые данные не зависели от чтения/записи. Во FreeBSD этого не происходит, и если что-то блокирует это, блокируется ЭТО действие, а не остальная часть системы. При выполнении резервного копирования или других важных операций этот фактор становится крайне важным для обеспечения адекватной (и стабильной) работы системы.

Простота анализа производительности системы

FreeBSD в базовой системе имеет все инструменты для анализа возможных проблем и загрузки системы. "vmstat" в одной строке сообщает мне, борется ли машина за ЦП, за ввод-вывод или за оперативную память. "gstat -a" показывает мне, насколько активно хранилище, диск за диском, раздел за разделом, а также в процентах относительно его производительности. Таким образом, "top" также имеет поддержку для понимания, процесс за процессом, сколько используется ввода-вывода (опция "m"). В Linux, чтобы получить одинаковые результаты, вам нужно установить определенные приложения, которые отличаются от дистрибутива к дистрибутиву.

Bhyve более несовершенен (но более эффективен), чем KVM

Для меня Bhyve — отличный инструмент виртуализации. KVM определенно более совершенен, но не имеет особых и специфических потребностей, не охватываемых Bhyve на FreeBSD, с этой комбинацией я обнаружил (в среднем) лучшую производительность. Однако во FreeBSD отсутствует KSM, который в некоторых случаях очень полезен.

Собираюсь ли я отказаться от Linux в пользу FreeBSD? Очевидно, нет, как и я не делал этого последние 20 лет. У обоих есть своё применение, своё пространство, свои сильные стороны. Но если до сих пор у меня было 80% Linux и 20% FreeBSD, перспектива состоит в том, чтобы поменять местами проценты использования и, где это возможно, напрямую внедрять решения, основанные на FreeBSD.

* Meta признана экстремистской организацией на территории РФ.

Перевод. Автор оригинала: Stefano Marinelli.