1

そこで、ある問題を考えていました。パブリッシャーが午前 10 時にトピックを作成し、すぐにトピックへのメッセージのパブリッシュを開始したとします。トピックの作成をコンシューマーに通知し、午前 10:01 にトピックをサブスクライブします。これらのコンシューマーは、午前 10:00 から午前 10:01 の間にパブリッシャーから送信されたメッセージを受信しません。そのため、このトピックにメッセージを受信するアクティブなサブスクライバーが存在しないことが判明した場合、メッセージング プロバイダーはこれらのメッセージを直ちに破棄する必要があります。消費者がどの時点からメッセージを受信したいかを指定できるサブスクリプション メカニズムを提供できますか (たとえば、トピックの開始時または 2011 年 12 月 25 日午前 10:00 PST など)。

4

1 に答える 1

1

パブリッシュ/サブスクライブ メッセージング モデルでは、パブリッシャーはトピックの作成をサブスクライバーに通知しません。

パブリッシャーとサブスクライバーは、トピックを介して疎結合されています。そのため、発行者は、購読者がいるかどうかを知りません。トピックのサブスクライバーが存在しない場合、メッセージング プロバイダーはそのトピックのパブリケーションを破棄します。一部のメッセージング プロバイダーは、パブリケーションのテイカーがいない場合にパブリッシャーに通知します。このようにして、出版社は出版を継続するかどうかを決定できます。

サブスクライバーは、サブスクリプションが作成された時点からパブリケーションを取得し始めます。サブスクリプションには、永続と非永続の 2 種類があります。非永続サブスクリプションは、サブスクライバーがアクティブである限りパブリケーションがサブスクライバーに配信されるサブスクリプションです。永続サブスクリプションは、サブスクライバーがアクティブでない場合でもパブリケーションが配信されるものです。

メッセージング プロバイダーが 1 つの最新のパブリケーションを保持し、遅れて参加したサブスクライバーに配信する、Retain Publication の概念があります。

于 2012-09-05T03:54:34.480 に答える