建议在MySQL和PHP用户通知系统

<p>我实现一个通知系统,看是否这些建议是有效成立,如果一个比其他更好的或更好的解决方法: P&gt; </p><p>一个通知被添加到数据库中。客体/识别用户登录或使用该网站。他们可获赠通知,他们没有与关闭选项见过或更高版本的读取。 P&gt; </p><ul> <li>通知表用于存储文本的通知和Id。 li&gt; </li><li> <strong>选项1: STRONG&gt;的通知表店谁看过通知所有用户 li&gt; <li> <strong>选项2: STRONG&gt;的通知表店谁没有阅读通知所有用户 li&gt; ul&gt; <p>难道这些选项的大同小异的,是它更好地增加潜在的100,000警报,并为这些用户或丢弃该通知交互,其状态更改或删除警报。这可能会成为一个非常大的表... P&gt; </p><p>什么是更具扩展性设置为自定义通知,根据用户的活动? P&gt;
</p></strong></li></strong></li></ul>

80 浏览 1 回复
  gt   通知   用户   记录   删除  

回复

    <p>我不会做这种方式。我会存储每个(用户通知)记录和标记每个记录为已读或未读。然后,您可以录制,当他们读它,这可能是根据您的应用程序非常重要(例如,如果你需要某种类型的审计跟踪)。 P&gt; </p><p> 10万的记录不是很大。直到你得到至少10万条记录,不要担心大小。如果有必要在某一时刻归档。但是,你应该做你会如何迅速生成一千万条记录一些估计。如果是3天,然后是啊,你有问题。如果是3年那么你不知道。 P&gt; </p><p>当然,此选项在单独的表的通知文本。 P&gt; </p><p>这也应该具有更高的消息数量规模非常好,你选择未读邮件的用户(索引),并可以加入得到通知文本(如果你的表是在数千万条记录的大小)或选择它们,然后分别选择消息。 p&gt; </p><p>在分区(用户通知)表很容易:你将它基于用户范围 P&gt; </p><p>和当用户删除的邮件,通常你应该只将其标记为删除,而不是实际删除它。大多数时候并没有太多的理由删除数据库中的任何东西。 P&gt; </p><p>我编码我的网站,并有相同的问题,但我自己解决了这种方式: p&gt; </p><ol> <li>存放在通知表中的所有记录。 li&gt; </li><li> li&gt; </li><li> cron作业:删除旧的10通知,如果用户有超过50通知 li&gt;。 OL&gt; <p>我认为Facebook会定期运行一个cron作业来删除旧的通知,这是我们无法看到我们的限制通知已经达到了。 P&gt;
    </p></li></ol>

    戴瑛珂

相关提问


友情链接: