6

我們希望實施「新聞Feed」,用戶可以在其中看到朋友播放的消息 ,最先按最新消息排序。但的 Feed應反映她朋友列表中的更改。 (如果她添加了新的朋友,那麼這些消息應該包含在Feed中,如果她刪除朋友,則不應包含他們的消息。)如果我們使用 pubsub-test示例並將收件人列表附加到每個消息 這意味着當用戶 連接和斷開朋友時,消息收件人列表的很多操作都會列出。如何在Google App Engine上建模社交新聞Feed

我們首先使用傳統的RDBMS 思考模擬發佈 - 訂閱「扇出」。它似乎起初工作,但後來,由於IN運營商 的工作方式,我們很快意識到我們不能繼續 該路徑。我們發現了Brett Slatkin's presentation from last years Google I/O,現在我們已經觀看了幾次,但我們不清楚 我們如何使用「動態」收件人列表來完成此操作。

我們需要的是在建模時如何「思考」一些提示。

回答

3

粘貼我在谷歌集團的谷歌應用程序引擎http://groups.google.com/group/google-appengine/browse_thread/thread/09a05c5f41163b4d#這個問題通過Ikai L(谷歌)

一對夫婦的想法在這裏的答案:

  • 被刪除的朋友一個共同的事件?同樣,是否加入 朋友一個共同的事件? (所有的親戚, 相對於「讀」新聞飼料)

  • 從我記得是什麼,只有這樣,才能使重讀取規模在人民 流 數據多次寫。 Twitter做到了這一點,從我記得的 ,使用「最終 一致」模型。這就是爲什麼你的 飼料將不會更新幾個 分鐘,當他們在重的 負載。普遍的共識,雖然, 是關係,規範化的 模型根本不會工作。

  • Jaiku引擎是你的研究的開源: http://code.google.com/p/jaikuengine。 這適用於App Engine希望這些 在您考慮設計時有所幫助。
相關問題