我有4个表:users
,posts
,categories
,categories_map
设计数据库
posts
有id
,text
,category_id
categories_map
包含user_id
和category_id
我的目标是做一个队列中用户可以预览。此外,用户将能够跳过一些帖子或编辑文本。如果用户跳过帖子,它将永远不会出现在队列中。但是,用户无法更改序列,因为cron将执行脚本。
第一种方法,我认为是创建一个包含 user_id
,post_id
,text_modified
,is_skipped
,last_posted
表。所以当cron作业执行时,它会留下一个时间戳,所以下次这篇文章将不会被抓取,用户可以轻松地更改这篇文章的文本。
第二种方法是创建一个单独的表,其中将为用户user_id
,post_id
,category_id
,text_modified
生成队列。所以cron作业可以很容易地按照这个表格工作,并在完成后删除该行。但通过这种方法,如果我将有30个用户,平均每个类别包含5000个帖子,我的表格就会有450000行。是的,如果它被正确索引它应该是一切都好。但是当我拥有100-200个用户时,它可以扩展吗?
我应该去或有任何其他的解决方案,它的方法呢?
1.用户不会互相交互2.跳过此帖后。它不会再出现他们了3.文本修改将只出现在他们的“墙上”(页面)4.不清楚这个问题。他们正在检查发布给他们的结果。 |如果我不需要坚持排队,我将如何拉动职位? – user256968
在这种情况下,您的问题是一个典型的时间表/新闻源问题。有一个警告,用户需要编辑他们的墙(与全球职位分开)。你可以按照我的建议。分解数据库应该很容易。 –
我想我没有让我的问题正确。之后我不关心时间线/新闻源。我只需要这个队列用于cron。该队列不会反映用户的任何内容。举个例子:用户选中了3个类别。总共将有100个队列或其他内容。 Cron会先选择并拨打一些电话给不同的API。所以在队列中只剩下99个等等。希望我现在更清楚 – user256968