C# имитирует несколько клиентов, вызывающих случайным образом 10 веб-сервисов

У меня есть Azure App Service тот хозяин WCF service, эта служба потребляет БД, которая находится в Azure SQL Database.

Те WCF Services были установлены в прошлом на выделенном компьютере, но, поскольку мы выполняем переход на Azure, нам необходимо убедиться, что выбранный App Service Plan а также Instance for Azure SQL Database достаточно для обработки имеющейся у нас нормальной нагрузки.

Я хочу создать Winformapp, затем сослаться на службы Azure WCF, и они реализуют вызов всего 10 методов (выберут те, которые являются высоконагруженными), а затем создадут, скажем, от 0 до 50 потоков, которые могут выполняться одновременно и случайным образом выполняться внутри 10 методов.

Например:

Поток n (имитирует клиента №n) будет запускать последовательно 10 методов случайным образом

  • GetData1 метод подождите, чтобы закончить тогда
  • GetData2 метод подождите, чтобы закончить тогда
  • GetData3 метод подождите, чтобы закончить тогда
  • GetData..10 метод дождитесь завершения.

Таким образом, все потоки должны запускаться одновременно, но методы могут быть разными, поэтому для потока 1, возможно, первым запускается методGetData4, для потока 2 первым запускаемым методом может бытьGetData10, и так далее.

И мне нужно регистрировать прошедшие миллисекунды, которые потребовались для запуска каждого метода в каждом потоке. Таким образом, я бы знал, что если я запустил 10 клиентов, я смогу увидеть, что, возможно, ответ будет хорошим, но если я запущу 25, возможно, ответ будет иметь плохую задержку, и это заставит меня увеличить план службы приложений и БД..

Любая подсказка о том, с чего начать, или пример кода, который может в этом помочь?

0 ответов

Другие вопросы по тегам