php - 频繁的数据库条目 - PHP、MySQLi
问题描述
我正在运行几个使用 ffmpeg 分段的直播和视频流。我为每个云服务器运行一个频道。我有一个更强大的中央服务器,用于执行各种任务,其中一项任务是摄取主 m3u8 播放列表并将片段名称和创建时间存储在数据库中。
目前为 8 个频道大约每 8 秒创建一次片段。这意味着我每 8 秒调用一次 playlist.m3u8(位于远程服务器上)并将每个段的信息存储在数据库中。
这使我可以快速创建视频(从时间和时间之间的频道 1 中选择)。
但是,一两次数据库似乎停止工作,我需要修复它才能获取新信息。
我在想,我是不是打得太狠了?有没有更好的办法?
我的语句打开一个新连接,检查条目是否已经存在,如果不存在,它将进入它,然后关闭连接。
我每 8 秒每个频道执行一次。
这感觉可能会更好,但我不太清楚如何。我应该/我可以保持连接打开吗?也许它根本不是问题。
有人有什么建议吗?
如果您需要更多信息,请询问。
询问:
$conn = new mysqli($servername, $username, $password, $dbname);
$eight = date('Y-m-d', strtotime("-8 day"));
$vq = "SELECT * FROM `".$channels['channels'][$id]['fo_id']."`
WHERE `segment_name` = '".$oline."'";
$query = mysqli_query($conn, $vq);
if(mysqli_num_rows($query) == 0){
$sql = "INSERT INTO `".$channels['channels'][$id]['fo_id']."`
(`segment_name`, `server`, `created`, `lenght`)
VALUES
('".$oline."', '".$channels['channels'][$id]['server']."',
'".date("Y-m-d H:i:s", $date)."', '".$otime."')";
$conn->query($sql);
}
$query = mysqli_query($conn, "DELETE FROM `".$channels['channels'][$id]['fo_id']."`
WHERE `created` < '".$eight." 00:00:00'");
$conn->close();
解决方案
推荐阅读
- r - 为什么 NA==NULL , NULL==NULL 打印逻辑(0)?
- reactjs - 如何创建一个由所有其他项目共享的独特的 create-react-app 项目模板,以保持一切都是最新的?
- javascript - 函数图/如何使用库
- debugging - 0x cc 与 0x cd 03 (int 3)
- google-api - 如何在“@google-cloud/express-oauth2-handlers”中获取刷新令牌
- javascript - 意外的令牌'<'错误(npx create-react-app)
- vhdl - 警告 (10631):VHDL 过程语句警告:推断信号或变量的锁存器
- vim - 用 vim 预览文件
- ios - 尝试连接到 Azure SQL Server Db 时,在应用审阅期间 Apple 应用审阅者的设备上出现错误
- python - 如何跟踪值在烧瓶应用程序的整个生命周期中不断变化的变量?