2013-03-08 46 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