zoukankan      html  css  js  c++  java
  • 视频上云网关EasyCVR程序数据库内数据会丢失吗?

    对我们的研发团队来说,做视频行业,除了需要关注传输速率的问题之外,视频数据的存储也是一个重要问题,视频的数据是庞大的,保证视频数据的安全和存储我们同样要重视。

    有的用户可能会问:这么庞大的数据,怎么保证数据不丢失呢?数据丢失了又该怎么办?恰巧,我们在做EasyCVR的使用测试时,就对此问题进行了测试,多少还是暴露出了一些问题,但我们也对此问题进行了比较妥善的解决。

    我们测试发现,在EasyCVR程序正在运行中时,如果按Ctrl+C强制退出,数据库中偶尔会有数据丢失,比如添加的设备和通道没有了。比较麻烦的做法就是将视频重新上传,但总要找到问题所在才能更好解决。

    我们按以下步骤进行了检查和修改:

    1、开启数据库操作的log

    首先查看数据库log日志,将上图中的代码 false 改为true;

    2、我们可以通过log定位出最后操作的相关数据指令;

    3、添加调试代码在数据库操作的函数中添加panic函数让程序强制崩溃,生成堆栈信息。从堆栈信息中定位出,问题出现在CVR模块stop函数中误操作执行了数据删除操作。

    找到了原因,我们即刻纠正了这类错误,在往后的正式版本中,将不会有在用户的正常操作情况下而产生的数据丢失的情况。

  • 相关阅读:
    【ybtoj】【Hash】回文子串
    Design Pattern:状态模式
    Design Pattern:装饰者模式
    Design Pattern:外观模式
    Design Pattern:适配器模式
    Design Pattern:模板方法模式
    Design Pattern:命令模式
    Design Pattern:观察者模式
    Design Pattern:复合模式
    Design Pattern:迭代器模式
  • 原文地址:https://www.cnblogs.com/EasyNVR/p/13395520.html
Copyright © 2011-2022 走看看