我创建了一个 API,它返回关于我的服务器上的一首歌曲的数据,包括流 URL。当客户端调用 API 时,它将获取数据,并开始在其播放器中流式传输歌曲。
但是现在我有多个客户端调用 API,返回有关播放列表中他们最近没有听过的随机歌曲的数据的最佳方式是什么?有几千首歌曲并且还在扩展。
所以我的问题是以下是否是一个好方法:
这是我打算做的事情。为每个客户端设置会话,在初始请求中,我获取所有歌曲,生成一个随机列表,将其与会话 ID 一起保存在缓存中,然后在每个后续请求中,我检查他们的会话 ID,然后抓取返回下一首歌曲数据?
至于确保不播放最近播放的歌曲,我将在数据库中记录之前听过的50首歌曲的历史,并进行歌曲ID比较,如果匹配则获取下一首歌曲?
这会是一种可行的方法吗?