0

ユーザーがお互いをフォローできるWebアプリがあります。あるユーザーがアクションを公開したときに、そのアクションをフォロワーのフィードに表示したいと思います。簡単なアプローチは、ユーザーごとにfeed.xmlファイルを保持することです。これは次のように更新されます。

UserAの後にUserB、UserCが続きます。

UserAはいくつかのコンテンツを公開しています。

次のようなUserB、UserCxmlフィードを更新します。

// feed-UserB.xml
UserA flew a kite.
UserX blah blah blah.
....

// feed-UserC.xml
UserA flew a kite.
UserY blah blah blah.
....

これはpubsubのようなものです(私は思います)。ただし、リアルタイムである必要はありません。多くのフォロワーのケースがどのように処理されるかはわかりません。ユーザーに100万人のフォロワーがいる場合、ハブはそこに座って100万人のサブスクライバー全員に通知する必要はありませんか?ハブが単一のサーバーで実行されている場合、これはCPUを長時間拘束する可能性がありますね。

ありがとう

4

1 に答える 1

0

知っておく必要があるのは、少数のパブリッシャーへのサブスクライバーが多い状況にあるのか、それとも多くのパブリッシャーへのサブスクライバーが少ない、より均等に分散されたソリューションがあるのか​​ということです。

これが前者の場合、Aが更新されたときにすべてのXMLファイルを書き込むのは賢明ではないかもしれませんが、問題の需要が十分に低く、すべてのXを生成する必要がないと仮定すると、「オン」デマンドを生成するだけです。 Aの各更新の、Y、Zファイル。これは次のように呼ばれます:読み取りの更新。

これが後者の場合、アプローチの方が優れています:書き込みの更新:Aが更新されるたびにX、Y、Zをビルドします。

于 2010-08-06T14:41:47.557 に答える