- 博客(9)
- 资源 (5)
- 收藏
- 关注
原创 Mac下intellij idea的go配置
之前在intellij idea下打开go项目,经常出现cannot resolve file等问题。解决办法:在~/.bash_profile配置GOPATH,配置为当前project目录,然后重新启动Intellij Idea。若仍然显示红色(无法索引),那么点File下invalid cache/restart即可
2017-03-31 19:46:57 2574
原创 go的一些问题,接口赋值
net.Conn类型可以直接赋值给io.Reader因为io.Reader中只有一个Read函数而net.Conn则也实现了Read函数,所以net.Conn可以说实现了io.Reader接口,所以可以给其赋值
2017-03-23 19:48:22 388
原创 关于git的一些东西
关于git的merge的相关问题:本地的分支为master,在本地的新分支dev上进行开发。在dev上commit完成后,需要checkout到master分支。此时需要将原始仓库设为upstream,命令为:git remote add upstream git@git.**********.com:username/********.git获取upstream的分支
2017-03-15 17:40:39 193
原创 go语言比较常用的用法
1、可以直接通过结构体,而并非实例来调用结构体的函数:type metricBuilder struct { metric string aggregator string tags map[string]string value string}func (this metricBuilder) N
2017-03-09 12:10:22 459
原创 httpdns中限流的方案
采用令牌桶算法的思想:github地址:https://github.com/juju/ratelimit1、在Compass结构体中增加一个成员bucket,定义一个专门的初始化函数用于bucket的初始化2、在server_route_d函数的第一行,调用bucket.TakeAvailable(1)函数3、或者在解析完hosts个数为n后,调用bucket.TakeAvail
2017-03-09 10:59:35 877
原创 关于go中日志类
在新建日志文件后运行三个协程:1、负责定时检查文件是否存在,若不存在,重新创建,并且清除过期日志2、定时为文件改名字,在原名字后添加日期3、定时将缓存内容flush到日志中调用日志errorf等函数时:1、判断其日志级别是否在配置的范围内2、用runtime.Caller获取函数调用栈,得到运行当前命令所在的文件、所在行等信息3、创建一个buffer用于临时存储stri
2017-03-09 00:25:20 529
原创 在ssh中避免老掉线以及私钥公钥的问题
在用户目录下的.ssh目录中,新建config文件,在文件中添加serverAliveInterval 60即可避免掉线(设置每60秒就让本地用户互动一下)用.ssh目录下生成的公钥与私钥可用于gitLab,免秘登录等功能。
2017-03-08 18:36:26 275
原创 https原理及其在go中应用
http://www.cnblogs.com/zery/p/5164795.html这篇博客里讲解的https的通信原理比较好理解。服务器端需要提供两个东西:用于ttps通信的私钥文件、证书机构颁发的证书或者自生证书。go中ListenAndServeTLS用于https通信,需要这两个文件。
2017-03-06 16:47:25 320
原创 DNS,edns,httpdns杂谈
DNS:1、localDNS查CNAME2、根据cip与CNAME查A记录(查询A记录时,使用edns协议访问httpdns服务提供商,包括qq,dnspod等)——————————但通常使用localDNS查询CNAME记录时也会有风险,不可靠等这时需使用edns协议连同A记录、CNAME一块返回,并进行缓存通过edns查询cname与A记录的一些特点:通过原始的
2017-03-06 15:30:03 4069
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人