鍒嗗竷寮廔D鐢熸垚绛栫暐 · fossi
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了鍒嗗竷寮廔D鐢熸垚绛栫暐 · fossi相关的知识,希望对你有一定的参考价值。
鏍囩锛?a href='http://www.mamicode.com/so/1/%e4%b8%80%e4%b8%aa' title='涓€涓?>涓€涓?/a> 閲嶈 RKE src alt 闅忔満 绯荤粺 瀛樺偍寮曟搸 png
鍒嗗竷寮忕幆澧冧笅濡備綍淇濊瘉ID鐨勪笉閲嶅鍛紵涓€鑸垜浠彲鑳戒細鎯冲埌鐢║UID鏉ュ疄鐜板槢銆備絾鏄疷UID涓€鑸彲浠ヨ幏鍙栧綋鍓嶆椂闂寸殑姣鏁板啀鍔犵偣闅忔満鏁帮紝浣嗘槸鍦ㄩ珮骞跺彂涓嬩粛鐒跺彲鑳介噸澶嶃€傛渶閲嶈鐨勬槸锛屽鏋滄垜瑕佺敤杩欑UUID鏉ョ敓鎴愬垎琛ㄧ殑鍞竴ID鐨勮瘽锛岄噸澶嶄笉璋堬紝杩欑闅忔満鐨勫瓧绗︿覆瀵逛簬鎴戜滑鐨刬nnodb瀛樺偍寮曟搸鐨勬彃鍏ユ晥鐜囨槸寰堜綆鐨勩€傛墍浠ユ垜浠敓鎴愮殑ID濡傛灉浣滀负涓婚敭锛屾渶濂芥湁涓ょ鐗规€э細鍒嗗竷寮忓敮涓€鍜屾湁搴忋€?/p>
鍞竴鎬у氨涓嶇敤璇翠簡锛屾湁搴忎繚璇佷簡瀵圭储寮曞瓧娈电殑鎻掑叆鐨勯珮鏁堟€с€傛垜浠潵鍏蜂綋鐪嬬湅ShardingJDBC
鐨勫垎甯冨紡ID鐢熸垚绛栫暐鏄浣曚繚璇併€?/p>
snowflake绠楁硶
sharding-jdbc
鐨勫垎甯冨紡ID閲囩敤twitter
寮€婧愮殑snowflake
绠楁硶锛屼笉闇€瑕佷緷璧栦换浣曠涓夋柟缁勪欢锛岃繖鏍峰叾鎵╁睍鎬у拰缁存姢鎬у緱鍒版渶澶х殑绠€鍖栵紱浣嗘槸snowflake
绠楁硶鐨勭己闄凤紙寮轰緷璧栨椂闂达紝濡傛灉鏃堕挓鍥炴嫧锛屽氨浼氱敓鎴愰噸澶嶇殑ID锛夈€?/p>
闆姳绠楁硶鏄敱Twitter
鍏竷鐨勫垎甯冨紡涓婚敭鐢熸垚绠楁硶锛?strong>瀹冭兘澶熶繚璇佷笉鍚岃繘绋嬩富閿殑涓嶉噸澶嶆€э紝浠ュ強鐩稿悓杩涚▼涓婚敭鐨勬湁搴忔€?/strong>銆?/p>
鍦ㄥ悓涓€涓繘绋嬩腑锛屽畠棣栧厛鏄€氳繃鏃堕棿浣嶄繚璇佷笉閲嶅锛屽鏋滄椂闂寸浉鍚屽垯鏄€氳繃搴忓垪浣嶄繚璇併€?鍚屾椂鐢变簬鏃堕棿浣嶆槸鍗曡皟閫掑鐨勶紝涓斿悇涓湇鍔″櫒濡傛灉澶т綋鍋氫簡鏃堕棿鍚屾锛岄偅涔堢敓鎴愮殑涓婚敭鍦ㄥ垎甯冨紡鐜鍙互璁や负鏄€讳綋鏈夊簭鐨勶紝杩欏氨淇濊瘉浜嗗绱㈠紩瀛楁鐨勬彃鍏ョ殑楂樻晥鎬с€備緥濡侻ySQL鐨処nnodb瀛樺偍寮曟搸鐨勪富閿€?/p>
浣跨敤闆姳绠楁硶鐢熸垚鐨勪富閿紝浜岃繘鍒惰〃绀哄舰寮忓寘鍚?閮ㄥ垎锛屼粠楂樹綅鍒颁綆浣嶅垎琛ㄤ负锛?bit绗﹀彿浣嶃€?1bit鏃堕棿鎴充綅銆?0bit宸ヤ綔杩涚▼浣嶄互鍙?2bit搴忓垪鍙蜂綅銆?/p> 澶т笓鏍?/a> 鍒嗗竷寮廔D鐢熸垚绛栫暐 路 fossi
闆姳绠楁硶涓婚敭鐨勮缁嗙粨鏋勮涓嬪浘銆?/p>
- 绗﹀彿浣?1bit)
棰勭暀鐨勭鍙蜂綅锛屾亽涓洪浂銆?/p>
- 鏃堕棿鎴充綅(41bit)
41浣嶇殑鏃堕棿鎴冲彲浠ュ绾崇殑姣鏁版槸2鐨?1娆″箓锛屼竴骞存墍浣跨敤鐨勬绉掓暟鏄細365 * 24 * 60 * 60 * 1000銆傞€氳繃璁$畻鍙煡锛?/p>
1
Math.pow(2, 41) / (365 * 24 * 60 * 60 * 1000L);
缁撴灉绾︾瓑浜?9.73骞淬€?code>ShardingSphere鐨勯洩鑺辩畻娉曠殑鏃堕棿绾厓浠?016骞?1鏈?鏃ラ浂鐐瑰紑濮嬶紝鍙互浣跨敤鍒?086骞达紝鐩镐俊鑳芥弧瓒崇粷澶ч儴鍒嗙郴缁熺殑瑕佹眰銆?/p>
- 宸ヤ綔杩涚▼浣?10bit)
璇ユ爣蹇楀湪Java杩涚▼鍐呮槸鍞竴鐨勶紝濡傛灉鏄垎甯冨紡搴旂敤閮ㄧ讲搴斾繚璇佹瘡涓伐浣滆繘绋嬬殑id鏄笉鍚岀殑銆傝鍊奸粯璁や负0锛屽彲閫氳繃璋冪敤闈欐€佹柟娉?code>DefaultKeyGenerator.setWorkerId()璁剧疆銆?/p>
- 搴忓垪鍙蜂綅(12bit)
璇ュ簭鍒楁槸鐢ㄦ潵鍦ㄥ悓涓€涓绉掑唴鐢熸垚涓嶅悓鐨処D銆傚鏋滃湪杩欎釜姣鍐呯敓鎴愮殑鏁伴噺瓒呰繃4096(2鐨?2娆″箓)锛岄偅涔堢敓鎴愬櫒浼氱瓑寰呭埌涓嬩釜姣缁х画鐢熸垚銆?/p>
鏃堕挓鍥炴嫧
鏈嶅姟鍣ㄦ椂閽熷洖鎷ㄤ細瀵艰嚧浜х敓閲嶅搴忓垪锛屽洜姝ら粯璁ゅ垎甯冨紡涓婚敭鐢熸垚鍣ㄦ彁渚涗簡涓€涓渶澶у蹇嶇殑鏃堕挓鍥炴嫧姣鏁般€?濡傛灉鏃堕挓鍥炴嫧鐨勬椂闂磋秴杩囨渶澶у蹇嶇殑姣鏁伴槇鍊硷紝鍒欑▼搴忔姤閿欙紱濡傛灉鍦ㄥ彲瀹瑰繊鐨勮寖鍥村唴锛岄粯璁ゅ垎甯冨紡涓婚敭鐢熸垚鍣ㄤ細绛夊緟鏃堕挓鍚屾鍒版渶鍚庝竴娆′富閿敓鎴愮殑鏃堕棿鍚庡啀缁х画宸ヤ綔銆?鏈€澶у蹇嶇殑鏃堕挓鍥炴嫧姣鏁扮殑榛樿鍊间负0锛屽彲閫氳繃璋冪敤闈欐€佹柟娉?code>DefaultKeyGenerator.setMaxTolerateTimeDifferenceMilliseconds()璁剧疆銆?/p>
以上是关于鍒嗗竷寮廔D鐢熸垚绛栫暐 · fossi的主要内容,如果未能解决你的问题,请参考以下文章