django - 如何衡量视频聊天应用程序的使用情况?
问题描述
我有一个群组视频聊天应用程序,用户可以随机进入房间进行对话。想象一下像视频reddit这样的东西
这更像是一个架构问题而不是代码问题。如何衡量使用情况?我想跟踪用户在每个房间花费的时间,哪些房间很受欢迎,获取用户访问过的每个房间的历史记录以了解他们的用户资料
我能想到的最天真的事情是在数据库中创建一个名为 usage 的新表,我在其中记录每个事件,例如用户进入带有时间戳的房间,用户离开带有时间戳的房间,例如 -
| user | room | event | timestamp
|------|----------|---------------|------------
| 1 | bitcoin | join_room | 1620632092
| 2 | comedy | join_room | 1620632094
| 1 | bitcoin | leave_room | 1620632292
| 3 | politics | join_room | 1620632295
| 3 | politics | leave_room | 1620632296
| 4 | dogs | join_room | 1620632296
| 5 | python | join_room | 1620632296
| 4 | dogs | leave_room | 1620632296
| 5 | python | leave_room | 1620632296
使用这种数据库架构,我将不得不运行非常复杂的 SQL 查询来了解用户在每个房间花费了多少时间。有一个更好的方法吗?
解决方案
推荐阅读
- cratedb - 您可以在带有对象列数组的表中批量导入 crateDB 吗?
- c# - Xamarin 中是否有针对标签上的 GestureRecognizer 的新闻和发布活动?
- c - 中断循环
- .net - 如何覆盖 dotnet publish 的目标文件夹
- linux - 在 Ubuntu 上的 Arduino IDE 上编译 NodeMCU 时出错
- postgresql - Heroku Postgres 专业层数据库计划显示“没有备份?
- c# - 将 IIS 与 .NET Core 2.2 Web API 一起使用时自动生成的 web.config 中的硬编码路径
- javascript - 在jsfiddle中,运行时错误消息“error”:“key missing:title”是什么意思?
- reactjs - 尽管修改了临时对象数组而不是状态,但错误“在调度之间检测到状态突变”
- python - 在 spyder 中在线运行 Dropbox 中存在的 python 脚本(不在桌面中)