Продължаваме нашата серия материали, посветени на тестването на производителността на сървърите. Днес ще говорим за няколко проверени през времето бенчмарка, които все още се поддържат и обновяват — NetPerf, HardInfo и ApacheBench.
Снимка — — CC BY-SA
Това е инструмент за оценка на пропускната способност на мрежата. Разработен е от инженери на Hewlett-Packard. Инструментът разполага с два изпълними файла: netserver и netclient. За провеждане на теста те трябва да бъдат стартирани на различни машини. По подразбиране netperf използва порт 12865, но той може да бъде заменен с флага -p. Утилитата работи с TCP и UDP по BSD Sockets, DLPI, Unix Domain Sockets и IPv6.
Днес netperf влиза в набора инструменти за бенчмаркинг . Също така той е използван от доста голям брой ИТ компании, . Ето как изглежда описанието на услугата netperf в един от примерите за оценка на производителността на OpenShift:
apiVersion: v1
kind: Service
metadata:
labels:
app-name: netperf
name: netperf
namespace: your_project
spec:
ports:
- port: 12865
protocol: TCP
targetPort: 12865
selector:
app-name: netperf
sessionAffinity: ClientIP
type: ClusterIP
В официалния репозиторий е посочено, че netperf се разпространява под специална лицензия на Hewlett-Packard. Въпреки това, авторът на утилитата — Рик Джоунс (Rick Jones) — твърди, че тя е оформена в най-добрите традиции на open source. Също така, трябва да споменем, че напоследък обновленията за netperf започнаха да излизат сравнително рядко. Вероятно това е свързано със зрялостта на продукта.
Netperf има аналози — например, и . Те също позволяват тестване на пропускната способност на мрежата. Разработката на iperf3 започна след като репозиторият на iperf2 изпадна в упадък. Новата версия е написана от нулата и е несъвместима с предишната реализация, въпреки че съдържа част от нейния код. Интересното е, че след релиза на iperf3, работата върху iperf2 отново започна с пълна сила. В крайна сметка, и двата инструмента подобна, но в същото време различна функционалност. Например, iperf2 е многопоточен, а iperf3 е само с един поток.
Това е утилита за събиране на информация за хардуера и операционната система. Тя показва данни за работата на устройствата на: PCI, ISA PnP, USB, IDE, SCSI, както и последователни и паралелни портове. Но може да бъде използвана и като бенчмарк и инструмент за мониторинг.
HardInfo предлага няколко теста. Например, CPU Blowfish - оценява производителността на процесора с помощта на криптографски алгоритми на блочно симетрично шифроване. Има - тест от комбинаториката. Системата решава шахматния проблем за разполагане на N дами на дъска с размер N x N. Тя разпределя фигурите така, че никоя от тях да не може да атакува другите. Също така е важно да се отбележи FPU FFT - тест за бързо изчисление на дискретното преобразуване на Фурие и FPU Raytracing - изчисление на трасировка на лъчи при рендериране на 3D сцена.
Резултатите в повечето тестове се дават в секунди и, съответно, колкото по-ниски са те, толкова по-добре. Всички отчети са показани в формати HTML и txt.
Първоначално утилитата е разработвана в рамките на проекта . Той включваше хостинг платформа за приложения с отворен код (като ) и няколко бази данни за документация и профили на разработчици с отворен код. BerliOS беше закрит през 2014 г. поради недостатъчни финанси. Днес HardInfo се развива благодарение на усилията на ентусиасти може да бъде намерен на GitHub.
Следва да се отбележи, че в работата на системата понякога се срещат бъгове. Известно е за периодично възникваща , проблеми с и няколко .
Инструмент за натоварващо тестване на HTTP сървъри. ApacheBench (AB) е разработван за проверка на Apache, но може да работи и на всеки друг сървър. Инструментът е предварително инсталиран в много дистрибуции на Linux.

Снимка — — Unsplash
Утилитата 'бомбардира' сървърите с много заявки. За да стартирате, трябва да въведете следната команда:
ab -n 100 -c 10 http://www.example.com/Тя ще изпрати сто GET заявки (максимум десет от тях ще бъдат изпратени едновременно) към тестовия ресурс. На изхода системата ще покаже средно време за обработка на заявките, общ обем на предадените данни, пропускна способност и брой грешки.
Днес около утилитата се е събрало обширно общество. В мрежата редовно се появяват за това как да настроите и използвате ApacheBench.
Важно е да се спомене, че AB има аналог - , но с много възможности. Например, той позволява генерирането на заявки от няколко компютъра, управлявайки процеса от един от тях. Поредицата включва механизми за авторизация на виртуални потребители и поддържа потребителски сесии. Този инструмент се прилага от много ИТ компании, облачни доставчици, като например .
Ние в 1cloud предлагаме услуга . Това е наем на виртуална инфраструктура с възможност за бърза кастомизация на парка .
Нашето облако Cisco, Dell, NetApp. Оборудването се намира в няколко ЦОД: DataSpace (Москва), SDN/Xelent (Санкт-Петербург), Ahost (Алма-Ата).
Източник: habr.com
