Go进阶(6): uuid生成及其作用
2019-08-21 00:40
405 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/shenziheng1/article/details/99900495
1. uuid的作用
uuid是Universally Unique Identifier的缩写,即通用唯一识别码。
uuid的目的是让分布式系统中的所有元素,都能有唯一的辨识资讯,而不需要透过中央控制端来做辨识资讯的指定。如此一来,每个人都可以建立不与其它人冲突的 uuid。A universally unique identifier (UUID) is a 128-bit number used to identify information in computer systems.
2. Golang中生成uuid并在websocket中使用
目前,golang中的uuid还没有纳入标准库,因此我们使用github上的开源库:go get -u github.com/satori/go.uuid。
示例:
[code]package main import ( "fmt" "github.com/satori/go.uuid" ) func main() { // 创建 u1 := uuid.NewV4() fmt.Printf("UUIDv4: %s\n", u1) // 解析 u2, err := uuid.FromString("f5394eef-e576-4709-9e4b-a7c231bd34a4") if err != nil { fmt.Printf("Something gone wrong: %s", err) return } fmt.Printf("Successfully parsed: %s", u2) }
- uuid在websocket中使用:
该示例在websocket中为每一个连接的客户端分配一个uuid,golang中可以使用github.com/gorilla/websocket为我们提供的websocket开发包。
声明客户端结构体代码如下:
[code]type Client struct { id string socket *websocket.Conn send chan []byte }
使用代码:
[code]client := &Client{id: uuid.NewV4().String(), socket: conn, send: make(chan []byte)}
相关文章推荐
- Linux磁盘分区UUID的获取及其UUID的作用
- Linux磁盘分区UUID的获取及其UUID的作用
- Linux磁盘分区UUID的获取及其UUID的作用
- go语言生成uuid
- Linux磁盘分区UUID的获取及其UUID的作用
- Go实战--golang生成uuid(The way to go)
- Linux磁盘分区UUID的获取及其UUID的作用
- go语言生成uuid
- Linux磁盘分区UUID的获取及其UUID的作用
- Linux磁盘分区UUID的获取及其UUID的作用
- Linux磁盘分区UUID的获取及其UUID的作用
- go语言生成uuid
- rhel6磁盘分区UUID的获取及其UUID的作用
- Python中生成唯一码(uuid的使用)
- Linux内核中的jiffies及其作用介绍及jiffies等相关函数详解
- VC6.0生成文件的种类和作用
- JAVA UUID 生成
- 批处理GO的作用
- java生成UUID
- python生成uuid