[英]How many years of millisecond timestamps can be represented by 41 bits?
我正在看Instagram關於分片ID生成的博客文章 。 此博客文章描述了生成64位標識符。 他們的機制將64位中的41位分配給毫秒時間戳,他們說:
- 41位時間(以毫秒為單位)(使用自定義紀元為我們提供41年的ID)
這是拼寫錯誤嗎? 我計算出你可以存儲41位的69年毫秒時間戳。 這是如何做:
那么,我錯在哪里?
你對計算沒錯。
(2^41)-1 ms
== 2199023255.551 s
== 610839.7932086 hr
== 25451.65805036 days
== 69.6828 Julian years
== 69.6843 Gregorian Years
哪個與您的結果密切相關( 69 years
)。
但是,您鏈接到的網站確實說41 bits
給出了它們
帶有自定義紀元的41年ID
在這種情況下,“Epoch”可能指的是開始日期。 鑒於該文章發表於“3年前”或2012
,我們可以計算出他們的時代始於2012 + 41 - 69 == 1984
。 這個日期可能被選為參考 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.