Skip to content
This repository has been archived by the owner on Oct 11, 2023. It is now read-only.

How to increase the throughput of the Simulation Service

Devis Lucato edited this page Jun 23, 2018 · 4 revisions

Following are instructions on how to change the message per second limit for the service. These should be used with care as following this guide could lead to the IoT Hub throttling the service. To prevent throttling you should add more Units to your IoT Hub or change the SKU; e.g. from an S2 level to an S3 level to match the parameters you set.

Please read the following guide for background on IoT Hub throttling: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-quotas-throttling

Instructions

  1. Resize IoT Hub:
    1. Open the Azure portal, go to the Resource Group containing the resources created
    2. Change IoT Hub SKU from S2 to S3
    3. You might also want to increase the VM size, from 4 cores to 8 cores or more (you can do this later if you don’t reach the desired throughput)
  2. Customize configuration:
    1. SSH into the VM
    2. Create a custom configuration file
      1. sudo nano /app/device-simulation-appsettings.ini
      2. Copy the content of appsettings.ini into this file
      3. Change lines 67-97 with IoT Hub S3 quota limits (see comments)
      4. Save (CTRL+X)
    3. Edit Docker Compose file:
      1. sudo nano /app/docker-compose.yml
      2. Uncomment lines 56-57, so that Docker Compose will use the custom configuration file
      3. Save (CTRL+X)
  3. Restart the microservices:
    1. sudo /app/start.sh