摘要:是一款由語言開發(fā)的,基于的的生成服務(wù)全局唯一標(biāo)識符是指在一臺機器上生成的數(shù)字,它保證對在同一時空中的所有機器都是唯一的。使用了服務(wù)器主機名運行的進程時間戳隨機數(shù)時序元素等一系列元素來保證生成的唯一性。
Guuid 是一款由 Go 語言開發(fā)的,基于HTTP的REST的 UUID 生成服務(wù)
Github:https://github.com/dreamans/g...
UUID(Universally Unique Identifier)全局唯一標(biāo)識符,是指在一臺機器上生成的數(shù)字,它保證對在同一時空中的所有機器都是唯一的。
Guuid使用了服務(wù)器主機名、運行的進程ID、時間戳、隨機數(shù)、時序元素等一系列元素來保證生成UUID的唯一性。
UUID 16 bytes, 構(gòu)成:
4 bytes 主機名&進程ID
4 bytes 時間戳
4 bytes 計數(shù)器
4 bytes 隨機數(shù)
安裝$ go get -u github.com/dreamans/guuid/guuid-server $ cd $GOPATH/src/github.com/dreamans/guuid/guuid-server $ go install運行
$GOPATH/bin/guuid-server -port 11223 -timeout 3
Usage:
-port 運行端口 -timeout 讀寫超時時間
運行成功:
? http server started on [::]:11223RestAPI
獲取UUID
$ curl http://127.0.0.1:11223/get { "code": 200, "message": "OK", "uuid": "5d1b3abf-5ab2-2792-0000-00046b2155a4" }
批量獲取UUID
$ curl http://127.0.0.1:11223/mget/100 { "code": 200, "message": "OK", "data": [ "5d1b3abf-5ab2-27cd-0000-00056d61a5e0", "5d1b3abf-5ab2-27cd-0000-000648f72a80", ... ] } 說明: 最多返回1000條記錄
獲取簡版UUID
$ curl http://127.0.0.1:11223/get/simple { "code": 200, "message": "OK", "uuid": "5d1b3abf5ab22792000000046b2155a4" }
批量獲取簡版UUID
$ curl http://127.0.0.1:11223/mget/100/simple { "code": 200, "message": "OK", "data": [ "5d1b3abf5ab227cd000000056d61a5e0", "5d1b3abf5ab227cd0000000648f72a80", ... ] }部署
LVS -> Nginx -> guuid-server
Configure Nginx
upstream guuid_server { server localhost:11211; server localhost:11212; server localhost:11213; } server { listen 80; server_name localhost; location / { proxy_pass http://guuid_server; } }
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/11851.html
摘要:為什么需要發(fā)號器在分布式系統(tǒng)中,經(jīng)常需要對大量的數(shù)據(jù)消息請求等進行唯一標(biāo)識,例如對于分布式系統(tǒng),服務(wù)間相互調(diào)用需要唯一標(biāo)識,調(diào)用鏈路分析,日志追蹤的時候需要使用這個唯一標(biāo)識。 原文鏈接:何曉東 博客 文章起源于 康神交流群的 panda大佬和boss li關(guān)于發(fā)號器的一些交流,特此感謝讓我們學(xué)到了新知識。 為什么需要發(fā)號器 在分布式系統(tǒng)中,經(jīng)常需要對大量的數(shù)據(jù)、消息、http 請求等進...
摘要:本節(jié)將學(xué)習(xí)來統(tǒng)一管理和部署微服務(wù),引入第三個微服務(wù)并進行存儲數(shù)據(jù)。到目前為止,要想啟動微服務(wù)的容器,均在其中的同時設(shè)置其環(huán)境變量,服務(wù)多了以后管理起來十分麻煩。 譯文鏈接:wuYin/blog原文鏈接:ewanvalentine.io,翻譯已獲作者 Ewan Valentine 授權(quán)。 本文完整代碼:GitHub 在上節(jié)中,我們使用 go-micro 重新實現(xiàn)了微服務(wù)并進行了 Doc...
摘要:比特幣的到帳時間是個區(qū)塊的高度,約分鐘。請注意,比特幣與的地址是一樣的。 showImg(https://segmentfault.com/img/remote/1460000018378805?w=1200&h=659); 方案一: 通過ExinCore API進行幣幣交易 Exincore 提供了基于Mixin Network的幣幣交易API. 你可以支付USDT給ExinCore...
摘要:今天我來和大家分享一下以及自動化生成工具的開發(fā)經(jīng)驗。代碼生成工具接著講講代碼生成工具,對于來講,有官方的代碼生成器,還有其他的同類開源項目比如。現(xiàn)有的代碼生成器沒有可以開箱即用的,都需要去進行不少的修改。 前言 在開發(fā)工作中,經(jīng)常會遇到新產(chǎn)品、服務(wù)上線后,需要將其 API 編寫不同語言的 SDK。但不同語言 SDK 中都有很大一部分內(nèi)容是用來進行 API 的描述,而且這部分代碼量是最大...
摘要:今天我來和大家分享一下以及自動化生成工具的開發(fā)經(jīng)驗。代碼生成工具接著講講代碼生成工具,對于來講,有官方的代碼生成器,還有其他的同類開源項目比如?,F(xiàn)有的代碼生成器沒有可以開箱即用的,都需要去進行不少的修改。 前言 在開發(fā)工作中,經(jīng)常會遇到新產(chǎn)品、服務(wù)上線后,需要將其 API 編寫不同語言的 SDK。但不同語言 SDK 中都有很大一部分內(nèi)容是用來進行 API 的描述,而且這部分代碼量是最大...
閱讀 1275·2021-11-23 09:51
閱讀 2667·2021-09-03 10:47
閱讀 2249·2019-08-30 15:53
閱讀 2435·2019-08-30 15:44
閱讀 1386·2019-08-30 15:44
閱讀 1211·2019-08-30 10:57
閱讀 1938·2019-08-29 12:25
閱讀 1101·2019-08-26 11:57