I achieved much higher speeds over the python interface by writing a C++ program that generates the HTTP line protocol lines directly. Then I also used libcurl to run async requests to dump the data to influx. If your influx node can keep up (it looks pretty beefy), then it’s a good way to get data into the DB.
If you want to test whether your client library or your influx node is the bottleneck, you can use the influx_stress program that is included with influx to see how much data your influx instance can ingest. influx_stress is written in Go I think, so it’s unlikely to be the bottleneck.
If you are set on using python, you could do the same thing in python, or you could use async requests or threading to post the data to influx db. But neither will be as fast as doing the same thing in C++ or C. Looking at the python library code, it didn’t look speed optimized to me, so I wrote my own client.
Edit: heads up that influx_stress included with influxdb is different than influx-stress, also written and maintained by influxdata. The influx-stress tool has more features.