0

我写了一个非常简单的论坛来集成到一个网络应用程序中,因为我正在努力寻找一个轻量级和快速的论坛,它允许我使用我自己的身份验证方法来决定谁是或不是有效用户以及哪些适合我的应用程序主题。用户要求订阅线程的能力,以便他们收到回复通知 - 这样做的最佳方式是什么?

我可以创建一个线程订阅表并在每次有人订阅时输入一个新行 - 这可能涉及在每个帖子和回复中查找大量繁忙线程,但只需一个简单的插入就可以很快找到新订阅。

我想到的另一个选择是每个线程有一行,并有一个字段,我可以在其中添加(或读取)每个线程的数组,其中包含所有订阅的用户 ID。由于数据库调用更少(即,当做出新的回复时,只需要一个数据库调用来获取所有用户 ID),这让我觉得阅读速度更快,但我认为添加新订阅者时插入可能会更慢因为我必须找到线程的行,获取现有数组,然后将用户 ID 添加到现有数组。

最后一个选项,与第二个选项非常相似,是有一个用户订阅表,其中每一行都是一个用户 ID,然后有一个订阅线程数组。

哪个是最好的方法?目前,我唯一的要求是向用户发送新帖子和回复的电子邮件,但将来我可能希望将其扩展为包括用户列出他们订阅的线程等的能力,就像许多主流论坛所做的那样。

4

1 回答 1

0

在我看来,你的两个选择都很好,除了那array件事。您可以简单地选择一个包含unique id线程的表,如果用户点击订阅按钮,则可以使用他的idthread id. 你可以称之为,subscription table.

我认为如果用户开始订阅更多线程,数组可能会派上用场。这取决于你的论坛有多大。

于 2013-02-15T21:13:27.313 回答