Локальный сервер windows или linux

Тестируем ОС в качестве веб-сервера

В посте речь пойдет о тестировании 6 операционных систем в качестве веб-сервера. Оси следующие: Debian, FreeBSD, CentOS, OpenSUSE, Ubuntu, и для потехи Windows 2008 R2 Standard. Почему именно такие, объясню ниже. ПО – стандартный набор: Apache2, MySQL5, PHP5 (далее AMP).

Работаю я в веб-студии, имеем несколько облачных серверов на Selectel’e, все они работают на Debian. Но почему именно он? Не знаю, возможно, эта ось более популярна, да и изначально опыт работы был только с ней. Сейчас появилась нужда еще в 1 облачном сервере и в локальном сервере. Данная ситуация и побудила меня произвести тестирование на предмет скорости и требовательности к ресурсам. Может есть что то лучшее?

Описание тестов. Все операционные системы устанавливались в VirtualBox, в качестве клиента использовался Firefox на оси-хосте. Все операционные системы 32-битные, устанавливались последних стабильных версий «из коробки», без тюнинга. Версии AMP’а примерно все одинаковые, устанавливались последние версии стандартными менеджерами пакетов (linux), из портов (bsd) и win32 версии для Windows (сам он x64). Все тесты мои собственные, стандартных решений не применял, мне было интересно изготовить их самому, надеюсь, они вам понравятся. Каждый тест производился по 5 раз, приведены только средние значения.

Возвращаюсь к вопросу, почему выбраны именно эти оси. А потому, что из выбранных линуксов Selectel предлагает именно их, к FreeBSD я давно присматриваюсь, может на локальный сервер установлю, а Windows я добавил просто для сравнения, ничего более. Может кто-то возразит, что все линуксы одинаково работают? А вот и нет, переходим к тестированию.

Комплексные тесты

Самые интересные, на мой взгляд, тесты. На сервер устанавливается wordpress, в первый же пост загружаются 5 стандартных windows-картинок через админку.

Затем в футер странички добавляется js-код, который по window.onload перезагружает страницу. Суть теста заключается в подсчете времени загрузок 50 страниц. Перезагрузка происходит 2 вариантами: location.href=’/’ и location.reload(true). Когда выставляем параметр forceGet в true, браузер перезагружает все ресурсы на страничке (картинки, стили, скрипты). Тест через file_get_contents: на ОС-хосте выполняется php-скрипт, который загружает 50 страниц с тестируемой машины посредством функции file_get_contents.
Здесь и далее на гистограммах единица измерения — секунды, соответственно, чем меньше, тем лучше.

Для всех тестов приведу по 2 гистограммы: для результатов со 128 мб оперативной памяти, и с 256 мб. Сделал это потому, что, как оказалось, не всем операционкам хватило 128 мб для обслуживания 1 клиента. Например, CentOS вообще зависала при варианте через file_fet_contents (реальная цифра не 160 секунд, а бесконечность, я не дождался окончания теста). В довесок к тестам с 128 мб добавил результаты работы монстра современного «осестроения» Windows 2008 R2. У него размеры RAM сделал 512 мб и не менял.

Как видим, все примерно выровнялись, однако, CentOS опять подкачал в тесте с reload: 2 теста выполнив по 13-15 секунд, а остальные 3 скатившись до 20-21.
В данном тесте победителями оказались FreeBSD и Ubuntu, легко справившись с нагрузкой и при 128 мб.

Тесты работы с БД

В данном разделе 2 теста: запись и чтение.
Запись. Из куска текста формируем случайный текст (длина его постоянна) и записываем текст в базу. Была взята таблица wp_posts. Операции повторяются 5000 раз.

Чтение. В таблице wp_posts содержится 300 постов, ранее сгенерированных. Тест заключается в выборке 50 случайных постов. Каждый пост выбирается отдельным запросом к БД.

Читайте также:  Excel для linux mint

Результат со 128 мб. Обратите внимание на OpenSUSE и Ubuntu: скорость записи очень медленная. Я попытался выяснить причину: сравнивал конфиги MySQL на Debian и Ubuntu, оказались абсолютно идентичные. Решил глянуть на файловую систему: на Debian ext3, на Ubuntu ext4, но на CentOS опять же ext4. Дело не в файловой системе. Оказалось, что на OpenSUSE и Ubuntu установлена MySQL 5.5.xx, а на всех остальных 5.1.xx.

Почти все отработали немного быстрее. Хотелось бы отметить то, что результаты довольно точные, погрешность примерно 0.05 секунды. В данных тестах победителя выявить не удалось, результаты примерно одинаковы, не считая результатов записи в MySQL 5.5. Все же номинальных победителей определим: Запись CentOS, чтение OpenSUSE.

Итого

Подводя итоги приведу таблицу рейтинга по каждому тесту.

Итак, в версии 128мб победила Ubuntu, хотя FreeBSD, судя по относительным цифрам, выглядел тоже очень неплохо. В версии 256мб побеждает FreeBSD, OpenSUSE и Ubuntu тоже держатся молодцом.

Я свой выбор сделал: FreeBSD на локальный сервер, Ubuntu на облачный (хотя, наверное, везде предпочтительнее использовать одни ОС и ПО). Надеюсь, не породил своим постом вечных холиваров, что лучше, что хуже. Повторюсь, все устанавливалось «из коробки», как есть. Возможно, если заняться тюнингом, лидеры изменятся.

Источник

Windows Server или Linux-дистрибутивы? Выбираем серверную ОС

Операционные системы — это краеугольный камень современной индустрии. С одной стороны они потребляют ценные ресурсы сервера, которые можно было бы пустить на что-нибудь более полезное. С другой — операционная система выступает оркестратором для приложений сервера и позволяет сделать из однозадачного вычислительного комплекса многозадачную платформу, а также облегчает взаимодействие всех заинтересованных сторон с оборудованием. Сейчас основной мейнстрим серверных ОС — это Windows Server + несколько Linux-дистрибутивов различной направленности. Каждая из этих операционных систем имеет свои плюсы, минусы и ниши применения. Сегодня мы кратко поговорим о тех системах, которые поставляются вместе с нашими серверами.

Windows Server

Эта операционная система крайне популярна в корпоративном сегменте, хотя большинство рядовых пользователей и ассоциируют Windows исключительно с десктопной версией для ПК. В зависимости от задач и необходимой к поддержке инфраструктуры сейчас в эксплуатации компаний находятся сразу несколько версий Windows Server, начиная с Windows Server 2003 и заканчивая последней версией — Windows Server 2019. Мы поставляем серверы со всеми перечисленными операционными системами, то есть это Windows Server 2003, 2008 R2, 2016 и 2019.

Windows Server 2003 используется, в основном, для поддержки корпоративных систем и сетей, построенных на базе Windows XP. Удивительно, но снятая около пяти лет назад с поддержки версия десктопной ОС от Microsoft до сих пор находится в эксплуатации, так как под нее в свое время было написано много проприетарного ПО для производства. То же касается и Windows Server 2008 R2 и Windows Server 2016 — они наиболее совместимы со старым, но рабочим программным обеспечением и поэтому используются по сей день.

Основные плюсы серверов под управлением Windows — относительная простота администрирования, достаточно большой пласт информации, мануалов и ПО. Кроме того, вы не сможете обойтись без сервера на Windows, если в экосистеме компании есть программное обеспечения или решения, использующие библиотеки и части ядра систем Microsoft. Также сюда можно добавить технологию RDP для доступа пользователя к серверным приложениям и общую универсальность системы. Кроме того, Windows Server обладает облегченной версией без GUI с ресурсопотреблением на уровне Linux-дистрибутива — Windows Server Core, о которой мы писали ранее. Все серверы под управлением Windows мы поставляем с активированной лицензией (для новых пользователей она бесплатная).

Читайте также:  Звуковое устройство не является устройством по умолчанию windows 10

В минусы Winserver можно записать сразу два параметра: стоимость лицензии и потребление ресурсов. Среди всех серверных ОС Windows Server наиболее прожорлива и требует минимум одно ядро процессора и от полутора до трех гигабайт оперативной памяти просто для работы ядра и стандартных служб. Эта система не подходит для маломощных конфигураций, а также имеет ряд уязвимостей, связанных с RDP и политиками групп и пользователей.

Чаще всего Windows Server предназначена для администрирования интранетов компаний и обеспечения работоспособности специфического ПО, работы баз данных MSSQL, инструментов ASP.NET или другого созданного специально для Windows ПО. При этом это все еще полноценная ОС, на которой можно развернуть маршрутизацию, поднять DNS или любую другую службу.

Ubuntu

Ubuntu — один из наиболее популярных и стабильно развивающихся дистрибутивов семейства Linux, выпущенный впервые в 2004 году. Некогда «линь для домохозяек» в оболочке Gnome, со временем Ubuntu стала дефолтной серверной ОС за счет обширного коммьюнити и непрекращающейся разработки. Последняя популярная версия — 18.04, но мы поставляем сервера и под 16.04, а около недели назад состоялся релиз версии 20.04, в которую завезли множество вкусностей.

Если Windows Server использовалась как ОС для поддержки специфического и windows-ориентированного ПО, то Ubuntu как Linux-дистрибутив — это история про open source и веб-разработку. Так, именно линуксовые серверы используют для размещения веб-серверов на nginx или Apache (в противовес Microsoft IIS), для работы с PostgreSQL и MySQL или популярными сейчас скриптовыми языками разработки. На сервер с Ubuntu отлично встанут и службы маршрутизации и управления трафиком.

В плюсы стоит записать и меньшее потребление ресурсов, чем Windows Server, а также нативную для всех unix-систем работу с консолью и пакетными менеджерами. Кроме того, Ubuntu, являясь изначально «десктопным домашним юниксом» достаточно дружелюбна к пользователю, что облегчает ее администрирование.

Основной минус — это unix, со всеми вытекающими. Пусть и Ubuntu и дружелюбна — но лишь относительно других Linux-систем. Так что для работы с ней, особенно в полноценной серверной конфигурации — то есть исключительно через терминал — потребуются определенные навыки. Кроме того, Ubuntu больше ориентирована на персональное использование и не всегда подходит для решения корпоративных кейсов.

Debian

Иронично то, что Debian — это прародитель крайне популярной и упоминаемой нами ранее Ubuntu. Первый билд Debian был опубликован более 25 лет назад — в далеком 1994 году и именно код Debian лег в основу Ubuntu. По сути, Debian является одним из старейших и при этом хардкорных дистрибутивов среди семейства Linux-систем. При всей схожести Ubuntu, в отличие от своего «наследника», Debian не получила того уровня доброжелательности к пользователю, как младшая система. Однако это дает и свои преимущества. Debian — более гибок по сравнению с Ubuntu и может подвергаться более глубокому конфигурированию и эффективнее решать ряд специфических задач, в том числе и корпоративного характера.

Основной плюс Debian — большая секьюрность и стабильностью по сравнению с Ubuntu и, тем более, с Windows. Ну и конечно же, как и у любой Linux-системы — низкое потребление ресурсов, особенно в форме серверной ОС под управлением терминала. Кроме того, Debian-сообщество это open source, так что эта система, в первую очередь, ориентирована на корректную и эффективную работу с бесплатными решениями.

Читайте также:  Windows media player ads

Однако за гибкость, хардкорность и безопасность приходится платить. Debian разрабатывается open source-сообществом без четкого ядра через систему мастеров веток, со всеми вытекающими. В один момент времени у Debian есть сразу три версии: стабильная, нестабильная и тестовая. Проблема в том, что stable-ветка разработки серьезно отстает от тестовой, то есть часто в ядре могут встречаться уже устаревшие части и модули. Все это выливается в ручную пересборку ядра или вообще в переход на тестовую ветку, если ваши задачи обгоняют возможности стабильной версии Debian. В Ubuntu таких проблем с разрывом версий нет: там раз в два года разработчики выпускают стабильную LTS-версию системы.

CentOS

Ну и закончим наш разговор о серверных ОС RUVDS на CentOS. На фоне более массивных Ubuntu и, тем более, Debian, CentOS выглядит подростком. И хотя система стала популярна в массах не так давно, как Debian или Ubuntu, релиз ее первой версии состоялся в один момент с Ubuntu, то есть еще в 2004 году.

В основном CentOS используется для виртуальных серверов, так как еще менее требовательна к ресурсам, чем Ubuntu или Debian. Мы поставляем конфигурации под управлением двух версий этой ОС: CentOS 7.6.1810 и более старой CentOS 7.2.1510. Основной сценарий использования — корпоративные задачи. CentOS — это история про работу. Никогда не являясь системой домашнего пользования, как это было, например, с Ubuntu, CentOS сразу разрабатывалась как RedHat-подобный дистрибутив на базе открытого исходного кода. Именно наследственность от RedHat и дает CentOS ее основные преимущества — ориентированность на решение корпоративных задач, стабильность и безопасность. Самый частый сценарий использования системы — это веб-хостинг, в котором CentOS показывает лучшие, чем у других Linux-дистрибутивов результаты.

Однако есть у системы и ряд минусов. Более сдержанный цикл разработки и обновлений, чем у той же Ubuntu, приводит к тому, что в какой-то момент вам придется мириться с уязвимостями или уже решенными в других дистрибутивах проблемами. Также отличается и система самих обновлений и установки компонентов: никакого apt-get, только yum и RPM-пакеты. Также CentOS не совсем подходит для размещения и работы с контейнерными решениями Docker/k8s, в которых Ubuntu и Debian ее очевидно превосходят. Последнее важно, так как виртуализация веб-серверов и приложений через контейнеризацию в последние годы все набирает обороты в среде DevOps. Ну и конечно же, у CentOS намного меньшее коммьюнити по сравнению с более популярными Debian и Ubuntu.

Вместо вывода

Как видно, любая ОС имеет свои плюсы и минусы и получила собственную нишу. Особняком стоят серверы под управлением Windows — в Microsoft-среде, так сказать, своя атмосфера и правила работы.
Все Linux-дистрибутивы схожи между собой в плане потребления ресурсов, но имеют свои специфические черты и отличия в зависимости от поставленной задачи. Ubuntu проще в использовании, Debian — более тонко конфигурируется. CentOS может выступать как замена платному RedHat, что немаловажно, если вам нужна полноценная корпоративная ОС в unix-исполнении. Но при этом она слаба в вопросах контейнеризации и виртуализации приложений.В любом случае, вы можете связаться с нашими специалистами и мы подберем для вас необходимое решение и конфигурацию исходя из ваших задач.

Источник

Оцените статью