iotagent-ul icon indicating copy to clipboard operation
iotagent-ul copied to clipboard

How to increase performance of iotagent-ul?

Open hungtv31 opened this issue 8 years ago • 5 comments

Dear all,

I test performance of iotagent-ul. I install iotagent-ul on a server (VM 16 core CPU, 16 GB RAM) and mongodb on other server (VM 16 core CPU, 16 GB RAM). However performance ~80 tps (for create service and devices). How to increase performance iotagent-ul?

Thanks all!

hungtv31 avatar Feb 03 '17 07:02 hungtv31

What about data sending performance? (data sending request would be much higher than service/devices creation in a real case, so they are more important from a performance point of view).

fgalan avatar Feb 08 '17 11:02 fgalan

Thanks fgalan, I have config logLevel: 'ERROR', and modify code of iotagent-ul to use multi thread (=core CPU). Performance of iotagent-ul is:

  • Create device: 220 tps
  • Update data: 280 tps (data sending request)
  • Get device: 850 tps My system have 10 million devices. Data sending request >= 50000 tps. How to increase performance of iotagent-ul?

hungtv31 avatar Feb 10 '17 01:02 hungtv31

My system have 10 million devices. Data sending request >= 50000 tps. How to increase performance of iotagent-ul?

hungtv31 avatar Feb 24 '17 07:02 hungtv31

I'm afraid IoT Agent has not been tested in such extreme performance scenarios, but since IoTAgents are mostly stateless and your scenario is using such big numbers, I suggest you try dividing the load between multiple inexpensive servers (using clusters for both MongoDB and the IoTAgents). Fine-tunning the code and configuration may help in increasing the performance by a factor of 2 or 3, but not 200, so you will need to change the hardware architecture (and identify what is your bottleneck, as, with 50000tps it could quite probably be the network, or some related SO parameters).

dmoranj avatar Mar 02 '17 05:03 dmoranj

Thank dmoranj advised.

hungtv31 avatar Mar 02 '17 09:03 hungtv31