go
键盘侠老李
python & go
展开
-
Cloudera Manager HBase Thrift 接口 Go/Python客户端
通过Thrift访问HBase数据库,Go/Python客户端。记录详细配置、调试、除错、调试过程。原创 2017-08-08 09:59:28 · 2684 阅读 · 0 评论 -
golang glog maxsize
var MaxSize uint64 = 1024 * 1024 * 1800 MaxSize is the maximum size of a log file in bytes. 如果我没有老眼昏花看不清楚的话,这个值是1.8GB。 也就是说,golang glog最大单个日志文件的大小为1.8GB。原创 2017-08-17 10:35:26 · 3303 阅读 · 0 评论 -
Go切片≠动态数组
Go切片设计非常巧妙,它不仅提供真正的动态数组的观感,并且性能优化的不错。但如果不了解切片的内部机制就可能会踩坑。背景:最近我又注意到一些关于切片操作似乎不合逻辑的讨论。我觉得是时候来科普一下切片的内部实现和切片操作的机制,特别是append()和bytes.Split()。Go切片Go语言中切片的概念很精妙:切片代表一个长度灵活的类似于列表的数据类型,但又让它对内存的分配完全可制。 其他的语言中翻译 2017-08-17 18:18:47 · 4037 阅读 · 0 评论 -
interface{} 与 []interface{}
interface{} 与 []interface{} 区别翻译 2017-08-18 15:45:11 · 16779 阅读 · 0 评论 -
Go无缓冲通道的陷阱
定义Channel是go的特色之一,甚至说是最大的特色也不为过,使用起来也非常简单。 首先定义一个int类型的channel:ch1 := make(chan int) // 无缓冲通道ch2 := make(chan int, 10) // 带缓冲的通道我们这里主要关注无缓冲通道。场景来看看这段代码:package mainimport ( "sync" "fmt")func原创 2017-08-26 21:07:54 · 1684 阅读 · 0 评论 -
go hex string与[]byte转换
hex string to []byteimport "hex"// 省略部分代码....hexStr := "fee9ecaadafeee72d2eb66a0bd344cdd"data, err := hex.DecodeString(hexStr)if err != nil {// handle error}// continue handling data[]byte to hex原创 2017-12-05 17:00:35 · 27105 阅读 · 1 评论 -
GoHive:支持SASL的go语言Hive客户端
https://github.com/lwldcr/gohive花了一周时间才调通,看log配合Hive的源码一步步debug相当费事,基本是按照pyhs2来实现的,支持SASL协议Plain模式,其他模式看后续是否需要酌情增加。客户端、查询操作返回数据还可以进一步封装,提供更便捷的使用,后面再更新吧。欢迎试用、反馈。原创 2017-12-29 17:02:46 · 4290 阅读 · 0 评论