2013-03-08 44 views
2

在我们的应用中,用户可以上传照片。此上传事件被注册为一项活动,并被推送到该用户的关注者的活动流中。如何处理活动流中已删除的照片

使用的流和技术如下:对于存储

  • MySQL后端(上载图像的URL存储在照片表以及一些元数据)被产生
  • 活动并储存在活动表中MYSQL
  • GEARMAN作业被创建,它将活动ID发送到REDIS,其中此活动ID扇出到所有用户追随者以填充他们的活动流。
  • 我们通过从REDIS获取活动ID数组,然后在MYSQL中执行简单的IN查询来检索流。
  • 在用户活动流中,可以看到图像的小裁剪版。

现在,这一切都非常好,随着几个缓存层的帮助保持系统非常稳定和可扩展。

但是,什么被认为是处理选择删除他们的一个或多个照片的用户的最佳方式。目前,当他们删除一张照片时,他们的所有追随者都会在他们的活动流中看到一个破碎的图像链接。

因此,我们需要在两种处理方法之间进行选择。

  1. 将活动ID存储在照片表中,并在用户删除该照片时删除与照片相关的活动。这将很好地工作,但会看到用户偶尔会从其流中移除活动。
  2. 将图像标记为在照片表中被删除,并在生成流时显示“此图像已被用户删除”消息。

哪一种会被认为是最好的方法?为什么?或者还有没有其他更好的方法来处理这个问题,人们会推荐?

非常感谢。

+0

海事组织最好尽可能透明。告诉其他用户该图像已被删除,并提供从活动流中删除条目的选项。这样用户就可以保持控制,并且在后台没有“魔术师”的情况发生。也许对于非常旧的条目(在当前时代意味着什么),您可以自动删除该条目。但我总是喜欢得到相应的信息。 – 2013-03-08 10:54:43

+0

太棒了,这正是我正在寻找的答案。既然这是一个基于意见的问题,我会留下来打听一下,以便对这个问题有更多的看法。如果你想把它写成一个答案,这是我们选择的选择,我会给予你第一个答案。非常感谢:) – gordyr 2013-03-08 10:58:59

+0

完成:-)这是什么社交网络呢? – 2013-03-08 20:58:51

回答

2

海事组织最好让这个尽可能透明。告诉其他用户该图像已被删除,并提供从活动流中删除条目的选项。这样用户就可以保持控制,并且在后台没有“魔术师”的情况发生。也许对于非常旧的条目(在当前时代意味着什么),您可以自动删除该条目。但我总是喜欢得到相应的信息。

+0

周末我们决定你们是我们要走的路线。在这件事上没有更多的意见是可惜的,但无论如何。我们认为你是发现。再次感谢。 :) – gordyr 2013-03-11 13:16:12

+0

很高兴我能帮上忙。仍然不想告诉你究竟在做什么? – 2013-03-12 13:18:30