2013-02-15 153 views
0

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

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

我想到的另一种选择是每行都有行,并且每个线程都可以添加(或读取)数组,每个线程包含所有订阅的用户标识。由于数据库调用较少,这使我阅读速度更快(例如,当创建新回复时,只需要一次数据库调用即可获取所有用户标识),但我认为添加新订户时插入可能会变慢因为我不得不为线程找到该行,请获取现有数组,然后将用户标识添加到现有数组中。

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

这将是最好的方式?目前,我唯一的要求是通过电子邮件向用户发送新帖子和回复,但未来我可能会扩展它,以包括用户列出他们的订阅线索等功能,就像许多主流论坛一样。

回答

0

在我看来,你的两个选择都很好,除了array之外。你可以简单地去一个包含unique id的表格,如果用户点击一个订阅按钮,它可以被添加他的idthread id。你可以叫它,subscription table

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