go
-
Go语言加密通信
一般的 HTTPS 是基于 SSL(Secure Sockets Layer)协议。SSL 是网景公司开发的位于 TCP 与 HTTP 之间的透明安全协议,通过 SSL,可以把 H…
-
Go语言使用select切换协程
从不同的并发执行的协程中获取值可以通过关键字 select 来完成,它和 switch 控制语句非常相似也被称作通信开关;它的行为像是“你准备好了吗”的轮询…
-
goroutine(Go语言并发)如何使用才更加高效?
Go语言原生支持并发是被众人津津乐道的特性。goroutine 早期是 Inferno 操作系统的一个试验性特性,而现在这个特性与操作系统一起,将开发变得越来越简单。 很多刚开始使…
-
Go语言工厂模式自动注册——管理多个包的结构体
本例利用包的 init 特性,将 cls1 和 cls2 两个包注册到工厂,使用字符串创建这两个注册好的结构实例。 完整代码的结构如下: .└── src &…
-
部署Go语言程序到Linux服务器
通过前面的学习相信大家对Go语言已经有了一定的了解,平时我们都是在本地进行开发调试访问的。那要怎么打包到服务器上呢?下面通过一个简单的实例来给大家介绍一下如何把我们写好的Go语言程…
-
Go语言音乐播放器
结合前面所学的知识,本节我们将设计并实现了一个音乐播放器程序。这个程序只是用于演示Go语言的特性,因此大家就不要期望能看到华丽的播放界面,听到优美的音乐。 本节我们将实现以下功能:…
-
Go语言接口的nil判断
nil 在 Go语言中只能被赋值给指针和接口。接口在底层的实现有两个部分:type 和 data。在源码中,显式地将 nil 赋值给接口时,接口的 type 和 data 都将为 …
-
Go语言哈希函数
Go语言中提供了 MD5、SHA-1 等几种哈希函数,下面我们用例子做一个介绍,代码如下所示。 package main import ( "crypto/md5&quo…
-
Go语言分布式id生成器
有时我们需要能够⽣成类似 MySQL 自增 ID 这样不断增大,同时又不会重复的 ID。以支持业务中的⾼并发场景。比较典型的是电商促销时短时间内会有大量的订单涌入到系统,比如每秒 …
-
Go语言map的多键索引——多个数值条件可以同时查询
在大多数的编程语言中,映射容器的键必须以单一值存在。这种映射方法经常被用在诸如信息检索上,如根据通讯簿的名字进行检索。但随着查询条件越来越复杂,检索也会变得越发困难。下面例子中涉及…