UserStreamの歯抜け

196 views
Skip to first unread message

きり

unread,
Oct 12, 2011, 4:56:23 AM10/12/11
to Twitter Development Talk - ja
ここ数日、UserStreamでツイートの歯抜けが起きています。
RESTのAPIを叩くと、抜けていた分も取得される状態です。

RESTだけで取得していても、重複範囲を取得すると、一度目では取得できていなかった発言が二度目で取得されます。
せいぜい10数秒の遅延ではありますが、遅延した分がUserStreamに流れてこないようです。

UserStreamとREST(主にhome_timeline)の併用はなるべく避けるように(むしろ禁止?)とドキュメントに書かれているので、
クライアント側ではRESTで補完することが出来ません。

他のクライアントでも起きているようなので、クライアント側のバグとは考えにくい状況です。

RESTの場合はmentionsを別途叩けば良いのですが、UserStreamだとhome_timeline分もmentions分も区別なく抜
けるので、一部のコミュニケーションの活発なユーザーは結構困っているようです。

とりあえず、お知らせまで。

山本裕介

unread,
Oct 12, 2011, 5:13:42 AM10/12/11
to Twitter Development Talk - ja
こんにちは。山本です。

Userstreamのサービス品質はベストエフォートで提供されており、時系列順に配信されることやすべてのツイートが配信されることは保証されてい
ません。
https://dev.twitter.com/docs/streaming-api/concepts#quality-of-service

現在userstream固有の大きな障害報告はされていないようです。歯抜けの頻度はどれくらいかわかりますでしょうか?

REST APIでもAPIコール時点までに行われたツイートがすべて取得できるわけではなく、複数回叩いた場合に歯抜け分が埋まることはあります。

以上よろしくお願いいたします。

きり

unread,
Oct 12, 2011, 5:59:23 AM10/12/11
to Twitter Development Talk - ja
私の環境では、45秒でUserStreamに約20発言流れますが、最低1件は取得漏れがある状況です。
数分間継続して確認しましたが、上記割合でコンスタントに漏れています。

10数秒の遅延によりREST APIで歯抜け分が埋まるのは把握しておりますが、私程度の流量ならばUserStreamでの歯抜けはないものと思っ
ていました。ただ、私より流量の少ないはずの方でも同現象は発生しているようです。
ベストエフォートでも、ある程度の目安はあると思うのですが、公表されていましたでしょうか?
目安としてlimitイベントが発行されると思いますが、今回の観測時間内ではlimitイベントは発行されていませんでした。

ここ数日の新機能実装(t.co拡張や検索へのentities導入およびRESTと同様のユーザーIDなど)で、バックエンドの負荷上昇や遅延が発生
しているのかなーと想像出来るのですが、とりあえずTwitter社に状況の把握だけでもして頂かないと、状況の改善には繋がらないだろうなーと思う次
第です。

これ以上私のリソースは割けないので、後はどなたかよろしくお願いします。m(_ _)m

山本裕介

unread,
Oct 12, 2011, 8:12:04 AM10/12/11
to Twitter Development Talk - ja
こんばんは。現象について細かい確認ありがとうございます。

つい先ほど同じ現象が dev.twitter.com でも登録されました。
https://dev.twitter.com/issues/33

同様の現象にあわれているデベロッパの方はTwitterのアカウントでサインインして"Subscribe to issue"を押してください。
アップデートがあった際にメールで通知されます。

以上よろしくお願い致します。
山本
Reply all
Reply to author
Forward
0 new messages