IoTHub 장치의 전송 시간

6789 단어 AzureIoTHubAzure
디바이스에서 Azure IoT Hub로 전송되는 시간을 측정했습니다.

전제 조건

  • 장치는 Surface Pro2입니다
  • 장치의 OS는 Windows 101511입니다
  • 측정 방법


    Console Application(.NET4.6)、nuget、Microsoft.Azure.Devices.DeviceClient를 받으려면 클라이언트를 추가합니다.SendEventAsync 메서드를 통해 전송되었습니다.
    CloseAsync 시 SendEventAsync가 동결되기 때문에 DeviceClent 실례를 다시 사용할 수 없다고 판단합니다.매번 DeviceClient를 실례화하기로 했습니다.
    Device Explorer를 보면 OpenAsync가 아닌 첫 번째SendEventAsync로 연결하기 때문에 첫 번째 발송 시간에서 두 번째 발송 시간의 값을 빼고 연결에 필요한 시간으로 합니다.

    코드

        class Program
        {
            private const string DeviceConnectionString = "xxx";
    
            static void Main(string[] args)
            {
                MyTask().Wait();
    
                Console.WriteLine("Hit any key.");
                Console.ReadKey();
            }
    
    
            static async Task MyTask()
            {
                for (int count = 0; count < 30; count++)
                {
                    var sw0 = new System.Diagnostics.Stopwatch();
                    var sw1 = new System.Diagnostics.Stopwatch();
    
                    Message eventMessage1st = new Message(Encoding.UTF8.GetBytes(Guid.NewGuid().ToString()));
                    Message eventMessage2nd = new Message(Encoding.UTF8.GetBytes(Guid.NewGuid().ToString()));
    
                    using (DeviceClient deviceClient = DeviceClient.CreateFromConnectionString(DeviceConnectionString, TransportType.Mqtt))
                    {
                        sw0.Restart();
                        await deviceClient.SendEventAsync(eventMessage1st);
                        sw0.Stop();
    
                        sw1.Restart();
                        await deviceClient.SendEventAsync(eventMessage2nd);
                        sw1.Stop();
    
                        await deviceClient.CloseAsync();
                    }
    
                    Console.WriteLine($"{count},{sw0.ElapsedMilliseconds},{sw1.ElapsedMilliseconds}");
                    await Task.Delay(1000);
                }
            }
    
        }
    

    결과



    좋은 웹페이지 즐겨찾기