用过的baidu空间,太难用了,还是cnblogs好用
GZ.Jackey
学无止境,博采众长。

随笔分类 -  Golang

1 2 下一页
google go language
【go语言】RSA加解密
摘要:关于go语言的RSA加解密的介绍,这里有一篇文章,已经介绍的很完整了。 对应的go语言的加解密代码,参考git。 因为原文跨语言是跟php,我这里要跟c语言进行交互,所以,这里贴上c语言的例子。 参考原文:http://hayageek.com/rsa-encryption-decryption-o 阅读全文
posted @ 2016-08-15 11:25 GZ.Jackey 阅读(2872) 评论(0) 推荐(0)
关于imagic拼接透明背景图片的问题
摘要:目标: 为了做图片水印,需要水平拼接多个logo和文字。。。 之前用过imagick,所以继续使用。 第一个版本:实现了图片和文字的拼接,代码如下: 实现效果:图片和文字,都已经拼接到一行,拼接方式由 MontageImage 第二个参数决定(Nx1,表示都在一行。。。) 但是有个问题,原先透明的l 阅读全文
posted @ 2016-08-05 16:17 GZ.Jackey 阅读(1737) 评论(0) 推荐(0)
[goa]golang微服务框架学习(三)-- 使用swagger-ui展示API
摘要:既然goa框架自动生成啦swagger-json文件,那么如何用swagger-ui展示出来呢? 这里分三步: 1.下载swagger-ui的web代码 2.添加swagger.json 和 swagger-ui资源的导出 3.main.go里面mount这两个资源,然后编译启动程序,访问即可 为什 阅读全文
posted @ 2016-07-18 12:45 GZ.Jackey 阅读(12479) 评论(2) 推荐(0)
[go语言学习指南]
摘要:内部分享,根据自己的经验,收集汇总的go语言学习指南。 适合新手入门。 可以通过这里进行下载。 阅读全文
posted @ 2016-07-07 11:07 GZ.Jackey 阅读(674) 评论(0) 推荐(0)
[goa]golang微服务框架学习(二)-- 代码自动生成
摘要:之前用过go语言的反射来做一些代码生成,参考这篇。 但是这种方式,入侵太强,需要执行对应的申明调用, 所以对GOA框架的自动生成非常感兴趣,于是仔细研究了一下,发现用的比较巧妙, 这里先卖个关子,先看看生成的代码目录结构。 这里使用adder的desgin文件来生成: 然后生成对应的目录结构如下(如 阅读全文
posted @ 2016-05-27 12:50 GZ.Jackey 阅读(7676) 评论(0) 推荐(1)
[goa]golang微服务框架学习--安装使用
摘要:当项目逐渐变大之后,服务增多,开发人员增加,单纯的使用go来写服务会遇到风格不统一,开发效率上的问题。 之前研究go的微服务架构go-kit最让人头疼的就是定义服务之后,还要写很多重复的框架代码,一直再想如何使用IDL描述服务,然后自动生成框架代码。 直到遇到老这货 goa,另外一个go的微服务框架 阅读全文
posted @ 2016-05-26 16:17 GZ.Jackey 阅读(16161) 评论(0) 推荐(0)
[golang]反射的用处--代码自动生成
摘要:背景: go语言处理db、json的时候,具体代码的变量定义和db字段、json输出的时候可能不一样。 这个时候,我们需要用tag的方式来进行定义。 例如: type MyStruct struct { Name string `json:"name"` MaxHeight int `json:"m 阅读全文
posted @ 2016-02-18 12:35 GZ.Jackey 阅读(3972) 评论(0) 推荐(0)
对需要聚类的数据使用canopy做初步的计算
摘要:K值聚类的时候,需要自己指定cluster的数目。这个cluster数目一般是通过canopy算法进行预处理来确定的。canopy具体描述可以参考这里。下面是 golang语言的一个实现(对经纬度距离计算进行cluster)。package mainimport ( "fmt" "mat... 阅读全文
posted @ 2016-01-11 11:10 GZ.Jackey 阅读(481) 评论(0) 推荐(0)
【golang】go语言,进行并发请求的wrap变参封装
摘要:package mainimport ( "fmt" "sync" "time")type WaitGroupWrapper struct { sync.WaitGroup}func (w *WaitGroupWrapper) Wrap(cb func(argvs ...in... 阅读全文
posted @ 2015-10-14 15:25 GZ.Jackey 阅读(2149) 评论(0) 推荐(0)
有意思的代码--利用系统信号切换日志模式
摘要:看到Kite里面的源码,有段代码挺有意思。 上代码先: 可以通过给正在运行的程序,切换日志模式。 举一反三,可以利用这个方式,来做很多开关切换。 补充 SIGUSR的code的查看和发送方式//Ubuntu //Mac grep -r "SIGUS" /usr/include/ /usr/inclu 阅读全文
posted @ 2015-07-30 17:47 GZ.Jackey 阅读(384) 评论(0) 推荐(0)
golang 中的定时器(timer),更巧妙的处理timeout
摘要:今天看到kite项目中的一段代码,发现挺有意思的。// generateToken returns a JWT token string. Please see the URL for details:// http://tools.ietf.org/html/draft-ietf-oauth-js... 阅读全文
posted @ 2015-07-28 16:52 GZ.Jackey 阅读(12637) 评论(1) 推荐(0)
golang几种post方式
摘要:用golang进行http请求类型多了,总结备忘一下。1.普通的post\get请求 var r http.Request r.ParseForm() r.Form.Add("uuid", orderUUID) bodystr := strings.TrimSpace(r.Fo... 阅读全文
posted @ 2015-06-24 18:04 GZ.Jackey 阅读(7191) 评论(0) 推荐(0)
[golang]内存不断增长bytes.makeSlice
摘要:------------------------------------------2015.7月更新后面发现这里其实有一个sb的问题,在于内存回收和释放。每个http请求,都会带一个http.Request,当请求并发数上来的时候,若不主动进行释放。垃圾回收机制会认为这个对象还不能回收。其实这里的... 阅读全文
posted @ 2015-04-03 20:00 GZ.Jackey 阅读(10398) 评论(1) 推荐(0)
为golang程序使用pprof远程查看httpserver运行堆栈,cpu耗时等信息
摘要:pprof是个神马玩意儿? pprof - manual page for pprof (part of gperftools) 是gperftools工具的一部分 gperftools又是啥? These tools are for use by developers so that they c 阅读全文
posted @ 2015-03-17 19:00 GZ.Jackey 阅读(14596) 评论(0) 推荐(0)
golang官方实现如何对httpserver做频率限制(最大连接数限制)
摘要:一般海量处理服务,都会对服务做个最大连接数限制,超过该限制之后,拒绝服务,避免发生雪崩,压坏服务。使用golang来编写httpserver时,如何进行呢?官方已经有实现好的包。使用示例:import("golang.org/x/net/netutil")l, err := net.Listen("... 阅读全文
posted @ 2015-03-17 14:17 GZ.Jackey 阅读(9752) 评论(0) 推荐(0)
golang处理 json中非法字符
摘要:原文:Hi there,I just discovered Go and decided to port a little program to Go.The program reads JSON-Data from an URL and process the Data. The Goport w... 阅读全文
posted @ 2015-03-12 10:58 GZ.Jackey 阅读(12380) 评论(0) 推荐(0)
nsq里面WaitGroups两种实用的用法
摘要:看过好几遍了,觉得挺实用的,记录备忘一下。1.开启很多个goroutine 之后,等待执行完毕type WaitGroupWrapper struct { sync.WaitGroup}func (w *WaitGroupWrapper) Wrap(cb func()) { w.Add(... 阅读全文
posted @ 2015-03-10 14:54 GZ.Jackey 阅读(626) 评论(0) 推荐(0)
golang zlib 压缩,解压缩
摘要:package mainimport ( "bytes" "compress/zlib" "fmt" "io" "os")//进行zlib压缩func DoZlibCompress(src []byte) []byte { var in bytes.Buffer ... 阅读全文
posted @ 2015-03-09 12:03 GZ.Jackey 阅读(7304) 评论(1) 推荐(0)
golang http.ResponseWriter valid json
摘要:golang httpserver如果采用 fmt.Fprintf(w, result)来输出json数据时,若json数据包含%号,则会出现问题。输出结果里面会包含(MISSING)字样,造成json格式错误。把输出函数替换为w.Write即可。func Action(w http.Respons... 阅读全文
posted @ 2015-03-02 10:22 GZ.Jackey 阅读(2056) 评论(0) 推荐(0)
golang: multiple http.writeHeader calls
摘要:背景:golang的http服务,读取文件,提供给client下载时候。出现multiple http.writeHeader calls 错误。func DownloadFile(w http.ResponseWriter, r *http.Request, sequence uint64, us... 阅读全文
posted @ 2015-02-26 10:54 GZ.Jackey 阅读(3307) 评论(1) 推荐(0)

1 2 下一页