-
golang中类型查询
所属栏目:[大数据] 日期:2020-12-16 热度:57
什么是类型查询 就是不知道一个变量的具体类型,是不是很奇怪,对于严格类型检查的语言中,怎么会不知道变量类型了?golang中的interface{}就是其中一种,一个函数,接收任何类型的变量作为参数,对于不同类型的参数,采用不同的处理方法,这样就需要类型查[详细]
-
go语言基本配置
所属栏目:[大数据] 日期:2020-12-16 热度:153
听说go语言性能很高,作为一个喜欢学习新东西的人,就必须去学学(况且也是google出品的) 所谓工欲善其事必先利其器,所以环境配置总是免不了的。 安装go 到这里golang中国下载:http://www.golangtc.com/download,下载对应平台的安装包。如果是x86的系统[详细]
-
Golang操作数据库
所属栏目:[大数据] 日期:2020-12-16 热度:59
基本概念 Open() – creates a DB Close() - closes the DB Query() - 查询 QueryRow() -查询行 Exec() -执行操作,update,insert,delete Row - A row is not a hash map,but an abstraction of a cursor Next() Scan() 注意:DB并不是指的一个connection[详细]
-
GOLANG BEEGO ORM
所属栏目:[大数据] 日期:2020-12-16 热度:81
GOLANG BEEGO ORM 每种语言一旦开始步入生产环节都不可避免对数据库操作,ORM 为业务逻辑与底层数据库操作建立起一座桥梁,使得业务对象能直接映射到数据库对象上,减少了数据库的误操作,同时也使得业务代码更加清晰。语言一旦开始成熟,都会有相应的 ORM[详细]
-
【开源】golang高性能分布式游戏服务器框架-mqant
所属栏目:[大数据] 日期:2020-12-16 热度:166
2016年底的时候对即时通讯以及游戏开发产生了一些兴趣,而且自己这方面的知识掌握也非常少,在未来很多产品应该都会使用到长连接技术(物联网IOT),因此很有必要掌握这方面的技术。于是就在网络上查询相关的资料,但发现目前网络上的开源游戏服务器框架相对较少,[详细]
-
Go 之旅五: 并发
所属栏目:[大数据] 日期:2020-12-16 热度:109
原文链接 http://ironxu.com/713 本文是学习 A Tour of Go (中文参考 Go 之旅中文 ) 整理的笔记。介绍Go 语言线程,信道以及互斥锁的概念和使用方法。 1. Go 线程 $GOPATH/src/go_note/gotour/concurrency/goroutine/goroutine.go 源码如下 /** * go 语言线[详细]
-
golang 函数-defer-recover-panic
所属栏目:[大数据] 日期:2020-12-16 热度:143
函数 1、函数的定义 packagemainimport"fmt"funcadd(aint,bint)int{//当函数参数类型相同时,除最后一个外其他类型可省略。//add(aint,bint)==add(a,bint)returna+b}funcmain(){fmt.Println(add(1,2))}//执行结果:#gorunfunc.go3 2、函数的多返回值 packagem[详细]
-
golang 指针
所属栏目:[大数据] 日期:2020-12-16 热度:198
指针 1、简单的定义一个指针 packagemainimport"fmt"funcmain(){varp*inti:=2p=ifmt.Println("memoryaddressi:",p)}//执行结果:memoryaddressi:0xc42000a2e0 2、打印指针的值 packagemainimport"fmt"funcmain(){varp*inti:=2p=ifmt.Println("memoryaddressi[详细]
-
【原创】packetbeat 之“WARN Time in pcap went backwards: 0”
所属栏目:[大数据] 日期:2020-12-16 热度:130
问题描述 在使用 packetbeat 进行数据包分析过程中,输出了以下几种数值: ? packetbeat git:(master) ? ./packetbeat -c ./packetbeat.yml -e -I redis_xxxx.pcap 21 |grep "pcap went backwards"...2017/01/11 06:57:47.091832 sniffer.go:365: WARN Time[详细]
-
【原创】packetbeat 之“ERR Failed to read integer reply: Exp
所属栏目:[大数据] 日期:2020-12-16 热度:99
问题描述 错误信息如下: ? packetbeat git:(master) ? ./packetbeat -c ./packetbeat.yml -e -I redis_xg-bjdev-rediscluster-1_prot-7101_20161222110711_20161222110721.pcap -E packetbeat.protocols.redis.ports=7101 -t2017/01/11 09:42:37.662148 log[详细]
-
【原创】packetbeat 之“request-response 错误关联”问题
所属栏目:[大数据] 日期:2020-12-16 热度:180
问题描述 在基于 packetbeat 分析 redis 协议时发现,在某些情况下,基于 request-response 关联出的 transaction 信息是错误的,示例如下: responsetime(947201 microseconds)== No.1----{"@timestamp":"2016-12-29T07:21:24.657Z","beat":{"hostname":"xg[详细]
-
golang 使用时间通过md5生成token
所属栏目:[大数据] 日期:2020-12-16 热度:92
package mainimport ("crypto/md5""fmt""io""strconv""time")func main() {crutime := time.Now().Unix()fmt.Println("crutime--",crutime)h := md5.New()fmt.Println("h--",h)fmt.Println("strconv.FormatInt(crutime,10)--",strconv.FormatInt(crutime,10)[详细]
-
golang 用sublime text3 作为IDE进行配置
所属栏目:[大数据] 日期:2020-12-16 热度:200
1.安装sublime text3 2.安装go语言程序包 3.测试go语言是否安装成功 键入cmd命令 ,打开dos窗口,键入go命令(如果在默认路径下找不到,可以在安装目录下查找,eg:go/bin ) 650) this.width=650;" src="http://img.jb51.cc/vcimg/static/loading.png" style=[详细]
-
golang工程打包不发布
所属栏目:[大数据] 日期:2020-12-16 热度:61
目录结构如下 myproject+--src|--myapp|+--myapp.go+--mylib+--logger.go 其中mylib目录是一个lib库,myapp是一个应用,其中引用了mylib库。 编译打包 查看gopath是否进行设置,没有设置,进行设置: export GOPATH=/home/kongxx/test/golang/myproject 编译[详细]
-
golang配置内置监控环境(windows7环境下)
所属栏目:[大数据] 日期:2020-12-16 热度:191
前提:首先保证windows上有go环境,而且保证的go env命令能查看正确的信息,如果出现“ golanggopathentryisrelative;mustbeabsolutepath:"" ”这样的情况需要修改环境变量gopath,把gopath路径中的分号去掉即可(win7的部分和win10需要这样) 1.首先安装 Grap[详细]
-
golang获取上月的开始日期和结束日期
所属栏目:[大数据] 日期:2020-12-16 热度:191
通过系统time来获取上月的开始和结束日期 package mainimport ( "fmt" "time" ) const DATE_FORMAT = "2006-01-02" func main() { year , month ,_ := time . Now (). Date () thisMonth := time . Date ( year , 1 , 0 , time .Local) start := thisMonth.A[详细]
-
程序上下文context for golang
所属栏目:[大数据] 日期:2020-12-16 热度:160
先来理解一下上下文context。 1.什么是程序上下文context 与计算机体系中的相关上下文概念类似,比如进程上下文。 程序上下文,context,程序中共享的信息,保存着程序运行或交互中需要保持或传递的信息。比如所处环境,当前运行状态。 context就是一些变量[详细]
-
Let's Go! 第一步:搭建开发环境
所属栏目:[大数据] 日期:2020-12-16 热度:73
Ubuntu开发环境下 下载地址 之后进入到下载目录后运行如下命令解压下载的go开发包到 /usr/local 。官方推荐的目录。 tar -C /usr/local -xzf go1.8.linux-amd64.tar.gz 配置变量 打开 /etc/profile 或者 $HOME/.profile 文件,加入如下内容 export PATH=$PAT[详细]
-
golang中context包解读
所属栏目:[大数据] 日期:2020-12-16 热度:106
前瞻 context 包困扰我好久,之前在 watch etcd 的时候首次上手使用这个包,当时并不理解这个包的作用,只知道可以用来关闭 watch , 后来被大牛吐槽了,决定深入探究一番。 简介 golang 中的创建一个新的 goroutine,并不会返回像c语言类似的pid,所有我们不[详细]
-
grpc(3):使用 golang 开发 grpc 服务端和客户端
所属栏目:[大数据] 日期:2020-12-16 热度:192
1,关于grpc-go golang 可以可以做grpc的服务端和客户端。 官网的文档: http://www.grpc.io/docs/quickstart/go.html https://github.com/grpc/grpc-go 和之前写的java的grpc客户端调用相同。也需要使用protobuf的配置文件。 但是golang下面的类库非常的简[详细]
-
golang生成唯一标识id
所属栏目:[大数据] 日期:2020-12-16 热度:200
package mainimport ("crypto/md5""crypto/rand""encoding/base64""encoding/hex""fmt""io")//生成32位md5字串func GetMd5String(s string) string {h := md5.New()h.Write([]byte(s))return hex.EncodeToString(h.Sum(nil))}//生成Guid字串func UniqueId()[详细]
-
golang cache 源码学习
所属栏目:[大数据] 日期:2020-12-16 热度:110
github源码地址 func newCacheWithJanitor(de time.Duration,ci time.Duration,m map [ string ]*Item) *Cache { c := newCache(de,m) // This trick ensures that the janitor goroutine (which--granted it // was enabled--is running DeleteExpired on c[详细]
-
golang struct
所属栏目:[大数据] 日期:2020-12-16 热度:192
struct 1、定义一个struct packagemainimport"fmt"typeRectanglestruct{widthfloat64heightfloat64}funcmain(){varrRectangle//声明一个结构体r,widthheight的值为“零”值。在这里为0.0,0.0r=Rectangle{width:20,height:10}//给长宽赋值,带名称时,顺序随意[详细]
-
Golang1.8使用slice实现先进进出功能
所属栏目:[大数据] 日期:2020-12-16 热度:65
package cacheimport ( "fmt" )type lists struct { count int pop int last int index int list [] int }func (l *lists ) Add(i int ) { l.list[l. last ] = i l. last += 1 if l. last = l.count { l. last = l. index if l. index = l.count { l. index[详细]
-
golang 结构体的嵌入类型和接口
所属栏目:[大数据] 日期:2020-12-16 热度:52
结构体的嵌入类型 1、嵌入结构体1 packagemainimport"fmt"typePersonstruct{namestring}typeStudentstruct{classintpersonPerson//定义person类型为Person}funcmain(){s:=Student{1,Person{"xiaoming"}}fmt.Println("name:",s.person.name)//访问嵌入结构体[详细]
