2017-12-05 16 views
0

Twitter object IDsツイート、ダイレクトメッセージ、ユーザ、コレクション、リスト等)次のように記載されている:、これらのIDは、時間に基づいてユニークな64ビットの符号なし整数であるTwitterユーザーのユーザーIDとステータスIDは分かれていますか?

代わりにシーケンシャルであることの。

彼らは互いに素であることをを保証していますか? IOW、同じIDでユーザーとツイートの両方を表すことができますか?

答えて

0

今日は「分離」していても、明日の保証はありません。あたかも分離されていないかのようにアプリケーションを開発することが賢明でしょう。

つまり、同じ64ビット整数をユーザーにもツイートとしても使用できると仮定する必要があります。これにより、将来の変更に備えてコードをより弾力的にすることができます。

+0

これはかなり明白です。 Twitterからの実際の情報はありますか? – sds

+1

Twitterは、高可用性分散ID生成のために構築したサービスであるSnowflake(https://github.com/twitter/snowflake)を使用しています。 Snowflake(https://blog.twitter.com/engineering/en_us/a/2010/announcing-snowflake.html)に関するパブリックコメントでは、TwitterはつぶやきのIDを生成するコンテキストでしか話しません。他のTwitterオブジェクトのIDを生成するためにSnowflakeが使用されているとは言いませんでした。 Twitterからの厳しい情報がない場合、SnowflakeはユーザーIDを管理していないという安全な前提です。衝突は可能であると仮定しなければなりません。 – DWRoelands

関連する問題