Подключение приложения C # для тестирования (пинг, загрузка, выгрузка) к веб-службе

#c# #asp.net #web-services #connection #bandwidth

#c# #asp.net #веб-сервисы #подключение #пропускная способность

Вопрос:

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

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

Комментарии:

1. Можно ли это использовать из сторонних приложений, таких как jmeter и postman?

2. @Afshin Я должен загрузить данные непосредственно из веб-сервиса. Позже просмотрите в консоли и сохраните в базе данных.

Ответ №1:

Решение 1: полностью настраиваемое

Описание высокого уровня:

  1. Создайте новую конечную точку, что-то вроде api / healthcheck
  2. Либо а. выполните фиктивное действие (сохраните / удалите ложные данные б. Сохраните таблицу или любую другую сохраняемость (подойдет даже синглтон) со статистикой последних вызовов
  3. Добавьте их в объект ответа класса и верните его вызывающему.

Решение 2. используйте пользовательскую телеметрию

Описание высокого уровня:

  1. Выберите службу, подобную application insight:https://learn.microsoft.com/en-us/azure/azure-monitor/app/app-insights-overview
  2. Настройте телеметрию, если стандартной конфигурации недостаточно.
  3. Используйте rest api для получения вашей информации

Комментарии:

1. Где находится информация о подключении, такая как проверка связи, загрузка и выгрузка? Где я могу получить их при вызове конечной точки?

2. Проверка связи является ICMP и не имеет ничего общего с веб-службами. Зачем вам вообще нужна эта метрика для веб-сервиса? Требуется ли вам время пинга сервера и почему? Значения загрузки и выгрузки могут быть выведены по времени, когда ваши глаголы GET и POST принимают телеметрию.

3. Мне нужны эти данные для проверки загрузки веб-службы. В будущем к нему подключится большое количество компьютеров. Телеметрия? Я должен сделать запрос GET и POST и проверить, сколько времени в них, и это будет в кб / с? На этот раз не происходит проверка связи? Если нет какой-либо библиотеки, которая отправляет и получает эти данные?