Работа с сетью в командной строке Windows (CMD).

Основные характеристики функции

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

Iostat

Замер загрузки CPU:

$ iostat -c 1

Вывод:

А как же производительность php?

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

Однако возникают ситуации, когда sysbench показал хороший результат, а php-приложение на этом сервере демонстрирует совершенно посредственные показатели производительности.

Разумеется, на результат оказывают влияние такие параметры, как:

Очень хотелось бы иметь инструмент, который бы легко устанавливался и после запуска выдавал понятную метрику производительности текущего PHP на сервере. Причем, хотелось, чтобы на этот инструмент не влияла производительность дисковой подсистемы (или сетевой) — измеряем только работу интерпретатора PHP на связке Процессор Память.

Простое гугление/размышление привело к мысли, что:

Что и было сделано:

Брандмауэр

  1. Нужно попасть в «Панель управления», для этого достаточно нажать на клавиши X и .
  2. Находим раздел «Брандмауэр Windows» и переходим туда.
  1. «Включение и отключение брандмауэра Windows».
  1. Отключите параметры на время и попробуйте снова зайти на сайт. Также блокировать может и антивирус, так что его можно попробовать тоже отключить.

Все версии windows: 7, 8.1, 10

  1. Одновременно нажмите на кнопки, указанные на картинке выше.
  1. Впишите команду «inetcpl.cpl» и нажмите «ОК».
  1. Переходим во вкладку «Подключения» и жмём по кнопке «Настройка сети».
  1. Если Proxy включен, то вы увидите включенную галочку, чтобы изменить настройки надо нажать «Дополнительно».
  1. Далее вы должны увидеть адреса и порты, настроенных серверов. Попробуйте также на время выключить «проксю» и попробовать подключиться.

Для чего необходимо узнавать адрес сервера?

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

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

Дополнительные варианты определения адресов dns

Если же речь идет именно о том, как узнать адрес сервера DNS, в свойствах того же протокола IPv4 следует просмотреть соответствующие поля. Но ведь при беспроводном соединении все адреса назначаются автоматически! Как узнать адрес сервера в этом случае?

Как измерить производительность postgresql?

К сожалению, инструмент sysbench не имеет встроенных средств для тестирования PostgreSQL. Но это нам совершенно не мешает, так как можно использовать утилиту pgbench.

Дополнительная информация: www.postgresql.org/docs/devel/static/pgbench.html

Дефолтный сценарий тестирования производительности многократно выполняет следующую транзакцию:

BEGIN;
UPDATE pgbench_accounts SET abalance = abalance   :delta WHERE aid = :aid;
SELECT abalance FROM pgbench_accounts WHERE aid = :aid;
UPDATE pgbench_tellers SET tbalance = tbalance   :delta WHERE tid = :tid;
UPDATE pgbench_branches SET bbalance = bbalance   :delta WHERE bid = :bid;
INSERT INTO pgbench_history (tid, bid, aid, delta, mtime) VALUES (:tid, :bid, :aid, :delta, CURRENT_TIMESTAMP);
END;


Для создания тестовых данных выполняем команду:

Как пользоваться функцией get-systeminfo

Работая с командлетом Get-Adcomputer, я обратил внимание на параметр Properties. Он позволял расширить стандартный вывод команды свойствами, которые были перечислены после него. Именно эта концепция была взята за основу. Например, для того чтобы запросить информацию о модели процессора и оперативной памяти, нужно после параметра Properties перечислить через запятую те свойства, которые мы хотим увидеть в результате выполнения.

Для группировки свойств используются switch параметры. Можно использовать совместно несколько switch параметров и параметр Properties


В процессе работы функции создаются две глобальные переменные $Result и $ErrorResult. Первая содержит компьютеры, с которых удалось получить информацию. Вторая содержит копьютеры, на которых произошли ошибки.

Данные переменные удобно использовать после того как функция отработала. Например, используя стандартный командлет Where-Object, можно выбрать из всех результатов те, которые отвечают определенным критериям.

Более подробные сведения и примеры можно получить, выполнив после установки модуля команду Get-Help Get-Systeminfo -Examples

Как посмотреть и как почистить кэш dns-сервера в windows, параметры /displaydns и /flushdns

Утилита ipconfig в Windows используется не только для того, чтобы обновить сетевые настройки, но еще и для управления кэшем DNS, при помощи утилиты ipconfig можно посмотреть текущий кэш DNS: ipconfig /displaydns, а также очистить кэш DNS: ipconfig /flushdns. Необходимость в чистке кэша возникает тогда, когда вы меняете DNS сервера и вам нужны новые ответы.

Чтобы увидеть текущей кэш DNS в Windows, достаточно использовать параметр /displaydns. Вывод команды ipconfig /displaydns длинный, как портянка, но если хотите вот его кусочек для сервиса dropbox.

Про DNS-сервера мы будем говорить отдельно в рамках курса по основам компьютерных сетей, поэтому сейчас никаких пояснений давать не буду, можете воспользоваться Гуглом или Яндексом, чтобы получить больше информации. Лучше посмотрим как очистить кэш DNS в Windows, для этой цели есть параметр /flushdns: ipconfig /flushdns.

После применения команды ipconfig /flushdns мы видим, что кэш DNS был успешно удален, проверили мы это при помощи параметра /displaydns. Всё очень просто.

Как расширить возможности функции


Предположим, что нужно добавить возможность получать наименование ос. Для этого требуется выполнить 4 действия.

  1. Придумать название, которое будет однозначно характеризовать то, что мы хотим получить. В данном случае назовем OsCaption.
  2. Внести изменения в блок параметров функции, отредактировав файл Systeminfo.psm1. Изменить нужно [ValidateSet()] для параметра Properties, добавив название, придуманное на первом шаге.
  3. Изменить файл конфигурации. Так как наименование ос можно получить через wmi обьект класса Win32_OperatingSystem (свойство caption)
    нужно добавить в хэш таблицу $Functionconfig строку вида

    OsCaption='-Class Win32_OperatingSystem -Property Caption'

  4. Если powershell запущен, и модуль был загружен: необходимо перезапустить консоль, либо выполнить Remove-Module Systeminfo

Выполнив четыре простых действия, мы получили новый функционал.

Не всегда представляется возможным получить нужные сведения напрямую из объекта wmi. Иногда для получения информации требуется обработать объекты нескольких классов. Для этих случаев необходимо писать скрипт.

Все скрипты модуля хранятся в папке Scripts. Ссылаться на них можно, используя параметр Script в хэш таблице $functionconfig. То есть, если бы в предыдущем примере требовался скрипт и ему для работы были нужны объекты нескольких классов, то строка для хэш таблицы приняла бы следующий вид

OsCaption='-Class Win32_OperatingSystem,Win32_ComputerSystem -Script Scriptfolderoscaptionscript.ps1’

После параметра Class нужно перечислить, объекты каких классов требуются для работы. В скрипте они будут доступны через переменные с аналогичным названием-в данном примере это $win32_operatingsystem и $win32_computersystem. Кроме этого во всех сценариях есть три служебных переменных-это $Computername, $Protocol и $Credential.

Скрипт для модуля ничем не отличается от обычного, кроме того, что не требуется использовать Get-Wmiobject, так как wmi объекты уже доступны через соответствующую переменную. Для протокола Dcom нужно учитывать, что вся информация должна быть получена через wmi.

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

Модуль тестировался на второй и пятой версии powershell, но скорее всего будет работать и на всех остальных. Я рекомендую использовать 5 версию, так как там появилась функция авто дополнения, которая значительно облегчает работу.

Как узнать адрес сервера в «майнкрафт»?

Теперь несколько слов об определении адреса собственного сервера в популярной онлайн-игре Minecraft, что может понадобиться, например, для того, чтобы ваши друзья могли к нему подключиться. Если изначально сервер создавался без использования стороннего программного обеспечения, в строке «server-ip=» будет показан искомый адрес.

Также найти его можно в файле настроек server.properties. В случае создания сервера, скажем, в программе Hamachi достаточно просто запустить искомую утилиту и просмотреть виртуальный внешний адрес. А вот строку «Starting Minecraft server on *:XXXXX» можно использовать для определения порта (в нашем случае – ХХХХХ).

Как узнать настройки сетевого адаптера в windows

Настройки, которые мы получили, написав одну команду, можно узнать долго кликая мышкой, для начала приведу алгоритм этих кликов:

  1. В правом нижнем углу, где часы, найдите иконку сетевого адаптера (если соединение беспроводное, то это иконка Wi-Fi, если проводное, то это иконка компьютера и провода) и нажмите на нее правой кнопкой мыши.
  2. Появится контекстное меню, в котором нужно выбрать пункт «Открыть Параметры сети и Интернет».
  3. Откроется окно с сетевыми параметрами, в котором есть заголовок «Изменение сетевых параметров», под этим заголовком будет меню, в этом меню нас интересует пункт «Настройки параметров адаптера».
  4. Это меню ведет нас в окно с сетевыми адаптерами, нас будет интересовать активный адаптер, в моем случае это адаптер беспроводной сети, обычно он называется «Беспроводная сеть», если вы используете для подключения провод, то вас скорее всего будет интересовать «Ethernet адаптер», в любом случае нужно нажать по адаптеру правой кнопкой мыши и из контекстного меню выбрать пункт «Состояние».
  5. Появится окно поменьше, в этом окне есть кнопка «Сведения…», она нас и интересует, нажав на эту кнопку мы получим информацию о настройках выбранного сетевого интерфейса в Windows.
:/>  Создание файла autorun.inf для CD- и DVD-дисков » Статьи о Microsoft Windows. Установка, администрирование, ускорение и оптимизация Microsoft Windows 7, Windows 8, Windows XP, и Windows 10

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

Здесь выбираем пункт «Открыть Параметры сети и Интернет», у нас появится окно управления параметрами сетевых подключений в Windows, которое показано на следующем рисунке.

В этом окне нас интересует пункт меню «Настройка параметров адаптера», когда вы на него нажмете, то увидите следующее окно.

В этом окне собраны все сетевые интерфейсы вашего компьютера, которые вы можете использовать для подключения к компьютерным сетям (подключаться можно не только к сети Интернет, о стандартных физических компонентах компьютерной сети можно почитать здесь).

Из-за того, что я использую Wi-Fi, меня интересует адаптер, выделенный синим и подписанный «Беспроводная сеть», если у вас проводное подключение, то вам нужен адаптер с подписью «Ethernet». В любом случае нажимаем по нужному адаптеру правой кнопкой мыши и из контекстного меню выбираем пункт «Состояние».

Назначение команды ipconfig в windows или как узнать ip-адрес и другие сетевые настройки

IPCONFIG – это стандартная сетевая утилита операционных систем семейства Windows, являющаяся стандартным инструментом системного администратора или сетевого инженера, команда ipconfig чаще всего используется для отображения сетевых настроек компьютера под управлением Windows, а также для обновления и изменения некоторых параметров сетевых интерфейсов, которые компьютер получает автоматически по протоколу DHCP (Dynamic Host Configuration Protocol).

Утилита командной строки ipconfig позволяет посмотреть/изменить настройки сетевых интерфейсов вашего ПК, естественно, сетевой интерфейс для своей работы использует различные протоколы, нас в большей степени будет интересовать стек протоколов модели TCP/IP (Ethernet, IP, TCP, UDP, DNS, DHCP и другие), хотя стоит заметить, что ipconfig позволяет получить информацию о интерфейсах, использующих технологии, не входящими в стек TCP/IP, например, Bluetooth или IrDA. В Windows есть графические аналоги ipconfig: winipcfg и wntipcfg, вторая уже морально устарела.

Если говорить о Unix-подобных операционных системах (например, Linux Mint, который мы устанавливали в Virtual Box), то здесь стоит выделить утилиту ifconfig, вообще, эмулятор терминала Linux зачастую обладает более богатым набором команд, нежели cmd.exe в Windows, но вернемся к ipconfig.

Давайте запустим командую строку и посмотрим как работает команда ipconfig в ее самом базовом варианте, то есть без параметров, достаточно просто написать в командной строке: ipconfig.

Для нас сейчас наибольший интерес представляет блок настроек, который идет сразу после заголовка «Адаптер беспроводной локальной сети Беспроводная сеть:», названием адаптера в данном случае является «Беспроводная сеть», в дальнейшем вы поймете почему это важно.

Здесь мы можем увидеть IP-настройки сетевого интерфейса, через который я выхожу в Интернет. Сразу становится понятно, что мой ПК связан с роутером по Wi-Fi, так как эти настройки относятся к беспроводному интерфейсу, так же мы видим IP-адрес компьютера 192.168.0.

Обновление сетевых настроек адаптера в windows, параметры /renew и /release

Первый и, пожалуй, самый часто используемый пример использования команды ipconfig – это пример с использованием параметров /release и /renew. Первый параметр используется для освобождения IP-настроек всех сетевых адаптеров компьютера: ipconfig /release, а второй параметр заставляет компьютер повторно запросить настройки у DHCP сервера (если не указывать адаптер, то команда будет применена ко всем сетевым интерфейсам Windows, будьте внимательны): ipconfig /renew.

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

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

Вернемся к команде ipconfig. Для начала посмотрим на текущие сетевые настройки моего ПК, который получает их от домашнего роутера по динамике.

Нас интересуют строки: «IPv4-адрес. . . . . . . . . . . . : 192.168.0.101 (Основной)», «Маска подсети . . . . . . . . . . : 255.255.255.0», « DHCP-сервер. . . . . . . . . . . : 192.168.0.1», «DNS-серверы. . . . . . . . . . . : 192.168.0.1», «Аренда получена. . . . . . . . . . :

30 февраля 2022 г. 13:30:45» и «Срок аренды истекает. . . . . . . . . . : 30 февраля 2022 г. 15:30:45». Теперь давайте выполним команду: ipconfig /release, в моем случае можно не бояться применять эту команду сразу ко всем сетевым интерфейсам, так как по факту используется только один, если у вас их больше, то указывайте интерфейс, к которому хотите применить команду.

После выполнение всех операций, утилита ipconfig предоставила нам небольшой отчет по каждому сетевому адаптеру, нас больше всего интересует второй снизу, именно на нем я хотел освободить настройки, именно этот адаптер у меня использовался для подключения к роутеру, после выполнения команды ipconfig /release, соединение с роутером пропало, так как пропала IP связность, роутер и мой ПК оказались в разных подсетях. В этом легко убедиться, достаточно взглянуть в правый нижний угол.

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

Мы помним, что у роутера был задан IP-адрес 192.168.0.1, он на нем так и остался, команда ipconfig не может сбросить этот адрес, но изменился IP-адрес компьютера, он именно изменился, там сейчас не пустое поле, давайте в этом убедимся, выполнив команду ipconfig /all:

Обратите внимание на IP-адрес компьютера теперь это 169.254.212.127, я даже могу его пропинговать, чтобы убедиться, что всё работает.

Но откуда взялся такой странный IP-адрес? Дело всё в том, что в операционных системах семейства Windows есть механизм под названием APIPA (Automatic Private IP Addressing) – этот механизм работает в тех случаях, когда компьютеры настроены на автоматическое получение IP-адресов, но в сети, в которой работает компьютер нет DHCP-сервера или он по каким-то причинам отвалился, и компьютер не может до него достучаться.

Другими словами APIPA – это механизм, который может дать возможность функционирования компьютерной сети даже в том случае, когда отвалился DHCP-сервер, а вдруг кто-то еще запустит этот механизм и два компьютера смогут наладить сетевое взаимодействие друг с другом, пример взаимодействия по ссылке выполнен в Cisco Packet Tracer, вот две инструкции: первая о том, как установить Packet Tracer в Windows, вторая как о том, как запустить и установить Cisco Packet Tracer в Ubuntu. Каждые пять минут APIPA будет пытаться найти DHCP-сервер, чтобы передать ему функции выдачи IP-адреса.

Объект измерения

Сервер куплен, операционная система установлена, sshd запущен. Открываем консоль и входим на сервер. Черная консоль, зеленые буквы и мигающий курс немо вопрошают тебя: «Что дальше?». Самое время задуматься, что будем измерять и из чего складывается производительность.

До этого момента вопрос казался простым: «запущу какой-нибудь бенчмарк и всё будет ясно». Сейчас, при виде мигающего курсора консоли, мысль замерла и никак не может выдать необходимую команду.

От чего в большей степени зависит производительность веб-приложения:

Нам нужно иметь четыре инструмента, которые бы могли замерить скорость работы по отдельности:

Имея на руках результаты замеров, мы можем комплексно говорить о производительности сервера в целом, а также можем прогнозировать работу веб-приложения.

Параметры команды ipconfig в windows

Мы уже рассмотрели один параметр утилиты ipconfig – это параметр /all, который выводит более подробную информацию о каждом сетевом интерфейсе в Windows и его настройках, давайте теперь посмотрим на остальные параметры этой команды. Команда help нам в этой не поможет, так как в этом справочнике команд нет утилиты ipconfig, воспользуемся конструкцией /?, чтобы получить список параметров команды ipconfig: ipconfig /?.

Как видим, у утилиты ipconfig достаточно много параметров, также в подсказке приводятся примеры использования команды ipconfig, из которых видно, что команду можно применять не сразу ко всем сетевым интерфейсам, как делали это мы, а к конкретному интерфейсу или группе интерфейсов, используя их имена, для указания имен можно использовать специальные символы, как например «*», которая означает любые символы в любом количестве или «?», которая означает один любой символ.

Чтобы было понятнее посмотрим простые примеры:

  • «?ова», этот шаблон означает, что слово должно заканчиваться на ова, а перед «ова» могут быть любые символы в любом количестве: корова, Иванова, Колотова, голова, все эти слова подходят под такой шаблон;
  • «?ро?», этот шаблон означает, что вначале и в конце может быть один любой символ, под этот шаблон подходят такие слова: крот, срок, 1роZ (а почему нет? никто не знает, как вы назовете интерфейс), прок и так далее.

Самые полезные примеры использования утилиты ipconfig мы рассмотрим ниже.

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

Мы уже убедились, что вывод команды ipconfig довольно объемный и с ним не очень удобно работать из командной строки, поэтому давайте рассмотрим несколько полезных приемов использования команды ipconfig с другими командами и операторами. Начнем мы с команды clip, которая сообщает интерпретатору командной строки, что вывод нужно делать не на экран, а загонять все данные в буфер обмена.

ipconfig /all | clip

Здесь «|» это оператор, который позволяет объединить две команды: ipconfig и clip, после того, как команда будет выполнена, вы ничего не увидите в командной строке, все данные находятся в буфере обмена, их нужно скопировать к какой-нибудь редактор, например, в редактор с подсветкой синтаксиса Notepad .

Следующий прием заключается в перенаправлении стандартного вывода команды ipconofig при помощи оператора «>». Этот оператор можно использовать, чтобы перенаправить данные с экрана командной строки, например, в файл, а затем открыть этот файл в графическом редакторе, что гораздо удобнее, рекомендую попробовать IDE Netbeans – это прекрасный редактор для разработки на PHP.

ipconfig /displaydns > ipconfig-displaydns.txt

Когда вы выполните такую команду, приложение cmd.exe создаст файл ipconfig-displaydns.txt в папке, из которой была запущена команда ipconfig, обычно эта папка указана в приглашении ко вводу, в моем случае это: C:WindowsSystem32. После чего вывод команды ipconfig будет записан в этот файл, а на экране вы ничего не увидите.

Следующий пример позволяет не просто записать данные в файл, но и сразу же открыть этот файл в стандартном редакторе Windows «Блокнот».

ipconfig /displaydns > c:tempipconfigDisplaydns.txtstart notepad c:tempipconfigDisplaydns.txt

Обратите внимание: здесь я использую оператор перенаправления стандартного вывода «>», указываю команде абсолютный путь к файлу, в который я хочу записать вывод команды ipconfig (если такого файла нет, он будет создан, но если нет каталога, то он создан не будет), а затем использую команду start, при помощи нее я запускаю Блокнот и сообщаю ему, что нужно открыть файл, находящийся по пути: c:

tempipconfigDisplaydns.txt. Блокнот – не самый удобный редактор, рекомендую вам попробовать JavaScript редактор Sublime Text 3, чтобы всё получилось, достаточно добавить путь к исполняемому файлу в переменную Path, в моем случае это выглядит так: D:

В Windows, как и в Unix-подобных ОС есть команда more, которая позволяет осуществить постраничный просмотр данных, которые выводятся в эмулятор терминала, правда стоит сказать, что версия more в Windows сильно уступает more в дистрибутивах Linux.

ipconfig /all | more

Теперь вывод команды ipconfig разбит на страницы, чтобы двигаться вниз используйте клавишу «Пробел». Это простые приемы, но они сделают вашу жизнь немного комфортнее.

Примеры использования утилиты ipconfig в windows

Давайте теперь рассмотрим несколько примеров использования команды ipconfig, которые могут пригодиться вам на практике. Примеров с использованием протокола IPv6 не будет, так как нет технической возможности, но суть работы команды ipconfig и ее параметров не меняется от выбранного протокола (IPv6 или IPv4).

Проблема с подключением остались

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

Проверить в windows 10

  1. Кликаем по самой левой нижней кнопке со значком окошка. Далее выбираем «Настройки».
  1. Находим раздел «Сеть и Интернет».
  1. Теперь слева выбираем раздел «Прокси». Если данного раздела нет – перейдите к второму способу. Там будут нужные настройки. Можно попробовать на время отключить «проксю» и проверить подключение.
:/>  Как восстановить загрузчик Windows 10 в автоматическом режиме и через командную строку

Проверяем производительность cpu

Для этого запускаем вычисление двадцати тысяч простых чисел.

$ sysbench --test=cpu --cpu-max-prime=20000 run

По умолчанию вычисление будет выполняться в одном потоке. Используем ключ –num-threads=N, если хотим производить параллельные вычисления.

Результат работы теста:

Тест CPU:
Test execution summary:
 total time:                           17.3915s
 total number of events:               10000

 total time taken by event execution:  17.3875
 per-request statistics:
   min:                    1.66ms
   avg:                    1.74ms
   max:                    4.00ms
   approx.  95 percentile: 2.03ms

Самое интересное в этом тесте — это значение total time. Запуская данный тест на нескольких серверах, мы можем сравнивать показания.

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

Заметки:

Работаем с dhcp идентификаторами классов пользователей в windows, параметры /setclassid и /showclassid

Теперь давайте разберемся с тем, как посмотреть идентификатор DHCP класса в Windows и как его изменить при помощи команды ipconfig, а затем немного разберемся с тем, что это вообще такое – классы пользователей в DHCP.

Следует заметить, что ipconfig /setclassid и ipconfig /showclassid требует обязательного указания интерфейса, для которого эти команды применяются, сразу для всех интерфейс вы не примените эти команды, у вас будет ошибка, поэтому не удивляйтесь, если ipconfig /setclassid и ipconfig /showclassid не работают. Для начала давайте посмотрим к какому классу DHCP относится мой интерфейс (ipconfig /showclassid).

По результатам работы утилиты видно, что у данного сетевого интерфейса еще нет класса DHCP пользователя, но это легко исправить, мы можем его задать при помощи ipconfig /setclassid, не забудьте только указать имя интерфейса, которому хотите задать класс.

При использовании параметра /setclassid мы сперва задаем имя сетевого адаптера, а затем указываем код класса для DHCP сервера, второй командной мы попытались проверить, что код класса был действительно задан, но тут нас ждал облом, поэтому давайте посмотрим сетевые настройки адаптера при помощи ipconfig /all.

Нужную строку я подсветил и тут видно, что мой беспроводной сетевой адаптер теперь действительно имеет класс testClassDHCP. Чтобы удалить текущий идентификатор класса у адаптера в Windows, просто используйте команду ipconfig /setclassid без указания имени класса, примерно так: ipconfig /setclassid “Беспровод*”. Тогда он будет удален.

Но зачем нужны эти идентификаторы класса для DHCP-сервера? В первую очередь для безопасности сети и удобства системного администратора. Клиентов DHCP сервера можно разделять на классы и в зависимости от выбранного класса тот или иной клиент будет получать те или иные настройки.

Простой пример: в локальной сети есть пользовательские компьютеры и есть компьютеры, выполняющие какие-то служебные задачи, за которыми обычные пользователи не сидят. Обычные пользователи хотят выходить в интернет и пользоваться доменными именами, поэтому им нужно выдавать адреса DNS-серверов, а служебные машины для своих задач используют только IP-адреса и им не нужны DNS-сервера.

Тогда можно создать DHCP класс для служебных машин и класс пользовательских машин: первым DHCP-сервер не будет выдавать DNS-сервера, а вторым – пожалуйста, держите (вот тут есть немного информации о видах сетевого взаимодействия и совместных ресурсах компьютерной сети).

Другой пример: допустим, вы не хотите, чтобы часть машин выходили за пределы вашей локальной сети, тогда вы можете создать отдельный DHCP класс для таких машин и сервер не будет выдавать этим машинам IP-адрес основного шлюза, а раз у машины нет IP-адреса шлюза, то она не сможет выйти за пределы той канальной среды (той подсети), в которой она находится.

Таблицы серверов (как просто выбрать сервер)

Анализ и проектирование ИТ-системServiceDesk, HelpDeskv81cv8.cfАбонемент ($m)

Расширение, подключаемое к базе 1С для решения задач поддержки пользователей. Позволяет быстро (по кнопке или комбинации клавиш Alt S), не выходя из программы 1С из любой формы, создать обращение к консультантам и программистам со скринами, файлами, в привязке к проблемному объекту (документу, справочнику, отчету, обработке и т.п.). Вести переписку по обращениям, отслеживать их выполнение с трудозатратами и уведомлять участников через механизмы: Telegram, Обсуждения 1С и Электронную почту. Код открыт и расширение может развиваться и быть доработано под индивидуальные потребности.

5 стартмани

25.03.2022   
6547   
62   
sapervodichka   
10    

Тест mysql oltp

Тест проверяет скорость выполнения транзакций MySQL сервера, причем каждая транзакция состоит как из запросов на чтение, так и на запись.

Очень удобно изменять параметры сервера в my.cnf, перезапускать его и прогонять серию тестов, — сразу видно, как меняется производительность.

Тестируем дисковую подсистему

Проверка дисковой подсистемы выполняется в три шага:

Подготовка тестовых файлов:

$ sysbench --test=fileio --file-total-size=70G prepare

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

Выполнение теста:$ sysbench –test=fileio –file-total-size=70G –file-test-mode=rndrw –init-rng=on –max-time=300 –max-requests=0 run

Будет произведен тест в режиме случайного чтения (rndw) в течение 300 секунд, после чего будут показаны итоги. Опять таки, по умолчанию тестирование будет выполняться в одном потоке (Number of threads: 1).

Очистка временных файлов:$ sysbench –test=fileio cleanup

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

Тест FileIO:
Operations performed:  249517 Read, 166344 Write, 532224 Other = 948085
Read 3.8073Gb  Written 2.5382Gb  Total transferred 6.3455Gb  (21.659Mb/sec)
 1386.18 Requests/sec executed

Test execution summary:
    total time:                          300.0045s
    total number of events:              415861
    total time taken by event execution: 178.9646
    per-request statistics:
         min:                                  0.00ms
         avg:                                  0.43ms
         max:                                205.67ms
         approx.  95 percentile:               0.16ms

Threads fairness:
    events (avg/stddev):           415861.0000/0.00
    execution time (avg/stddev):   178.9646/0.00

В качестве меры производительности дисковой подсистемы можно использовать значение средней скорости передачи данных (в данном примере это 21.659Mb/sec).

Посмотрим, что показал этот тест на моих серверах:

Заметки:

Требования к инструментам измерения

Наиболее точный способ измерения производительности сервера является одновременно и самым очевидным: нужно установить приложение на сервер и активировать реальную нагрузку. Такой способ хоть и даёт точный результат, но является бесполезным 🙂 по ряду причин:

Файл конфигурации

Функция Get-Systeminfo имеет файл конфигурации, находящийся в папке config. Он представляет из себя powershell скрипт, содержащий основные настройки. Наличие данного файла позволят вносить изменения в функцию, не редактируя основной код модуля. Для того чтобы расширить либо убрать ненужный функционал — нужно всего лишь изменить этот файл.

Основные переменные в файле.

$Defaultinfoconfig определяет, какая информация будет получена, когда функция будет запущена без каких-либо параметров. Добавляя или удаляя свойства из массива, можно настраивать какие сведения будут получены.

$Functionconfig содержит хэш таблицу. Где ключом является свойство, которое будет указываться в параметре Properties, а значением строка в стиле параметров powershell. В строке допустимы следующие параметры: Class, Query, Property, Script, FormatList

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

$Switchconfig содержит хэш таблицу: ключом является имя switch параметра, а значением-массив свойств.

Выводы

Какие выводы можно сделать о стандартной сетевой утилите ipconfig и ее использовании в операционной системе Windows? Всё очень просто — команда ipconfig позволяет быстро посмотреть настройки сетевых интерфейсов и протоколов стека TCP/IP, а также быстро выполнить некоторые служебные операции, такие как: просмотр кэша DNS и его очистка, сброс настроек с сетевого интерфейса и их повторное получение, а еще эта утилита дает нам возможность настроить взаимодействие между клиентом и DHCP сервером.

Заключение

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

Особенно остро эта проблема проявляется, если вы анализируете сервер клиента, который уже эксплуатируется «в полный рост». Вы не знаете, какие cron-задачи выполняются, какие процессы дремлют и ждут своего события, чтобы включить долгий gzip/tar, еще тут работает антивирус/спам-фильтр и десяток виртуалок, в которых происходит загадочное.

Для анализа поведения сервера во времени нам помогают atop и iostat. Копим статистику за несколько дней (или больше), после чего можно её просмотреть.

Оставьте комментарий

Adblock
detector