在写入数据库之前持久存储数据点
Store datapoints persistently before writing to database
我有一个接收传感器数据的 Django 应用程序。然后使用 influxdb-client-python
库处理此数据并写入 influxDB
。我想以异步方式写入数据,因此 return 在数据实际写入数据库之前对数据生产者做出响应。
但是,一旦我发送了这个回复,我就不能再丢失这些数据了。由于我永远无法确定服务器实际上是否能够将数据写入 influxDB
,我正在考虑先将其写入文件并在成功后 returning 响应(类似到 WAL)。这引入了新的问题,比如确保 WAL 实际上写入文件,最重要的是,确保它是线程安全的,因为服务器可能同时处理多个请求。
有没有更好的方法,也许内置在 Django
中?
我有一个接收传感器数据的 Django 应用程序。然后使用 influxdb-client-python
库处理此数据并写入 influxDB
。我想以异步方式写入数据,因此 return 在数据实际写入数据库之前对数据生产者做出响应。
但是,一旦我发送了这个回复,我就不能再丢失这些数据了。由于我永远无法确定服务器实际上是否能够将数据写入 influxDB
,我正在考虑先将其写入文件并在成功后 returning 响应(类似到 WAL)。这引入了新的问题,比如确保 WAL 实际上写入文件,最重要的是,确保它是线程安全的,因为服务器可能同时处理多个请求。
有没有更好的方法,也许内置在 Django
中?