数据库
首页 > 数据库> > c-MySQL,存储实时数据

c-MySQL,存储实时数据

作者:互联网

首先,我是工程师,而不是计算机科学家,所以请保持谦虚.
我目前有一个使用MySQL的C程序.该程序还包含了NI Visa运行时.其中一个中断处理程序每​​秒大约200次从USB设备接收数据(1个字节).我想将此数据和时间戳存储在远程服务器的每个样本上.这可行吗?谁能推荐一个好的方法?
问候,
麦可

解决方法:

我认为对远程服务器执行200次事务/秒的要求很高,尤其是当您考虑到这些事务将在中断处理程序的上下文中发生时,该中断处理程序必须完成其工作并迅速完成.我认为最好将中断处理程序与数据库访问脱钩-也许让中断处理程序将传入的数据和时间戳存储到某种内存中数据结构(数组,循环链表或具有适当同步性的任何数据)中并有一个单独的线程,等待数据结构中的数据可用,然后将其泵送到数据库中.我想让该中断处理程序尽可能保持精简和确定性,而且我担心通过网络对远程服务器的数据库访问速度太慢-或更糟糕的是,大多数情况下都可以,但是有时没有明显的原因去h * ll.

当然,这会引发数据超限的问题/问题,其中数据输入的速度快于数据被泵送到数据库的速度,并且内存中的存储结构已满.这可能会导致数据丢失.如果丢掉一些样品,有多糟糕?

标签:real-time,mysql-2,sql,mysql,c-4
来源: https://codeday.me/bug/20191024/1919119.html