Golang

独孤九剑(003) - 当前目录缓存篇

每个人都会变成自己讨厌的人Git 通过二进制文件 .git/index 来缓存当前目录,实现工作目录和仓库数据的快速交换。Git 的缓存却保存在 index 文件里,为什么不是 cache,很奇怪。Git 当前目录缓存至少应该满足以下功能:可随时根据当前仓库(HEAD 状态)生成缓存。缓存不一定总是和仓库状态保持一致。缓存数据格式固定,可长期被多个 Git 命令解析。Git

Go学习【三】一个简单的orm

碎语:(请自行跳过)距离上篇文章发布也有半个月的时间了然后这半个月 也没有用go写项目或继续学习 只能算简单的入门了 以后如果有需要的话 或许会深入的去了解一下这门语言 与各种常用的类库 精力有限 把自己之前尝试写一个简单orm的一些片段与大家分享也许在月底会尝试用go去写一个爬虫 留待下篇文章分享前言:关于go的orm框架有许多不错的 为什么自己想写一个原因无非就是想通过

open-falcon-agent源码学习

最近学习falcon,看了源码和极客学院的视频解析,画了调用结构、关系,对主要的代码进行了注释代码地址:https://github.com/beyondskyw...标签(空格分隔): falcon go监控数据机器性能指标:cpu,mem,网卡,磁盘……业务监控开源软件状态:Nginx,Redis,MySQLsnmp采集网络设备指标设计原理自发现采集值不同类型数据采集分

Go语言学习笔记(一)

主要是看《the way to go》时的一些笔记,比较凌乱,内容也不全,以后慢慢补充。标签(空格分隔): go 监控关键字break default func interface select case defer go map struct chan else

深入理解Go语言的slice

先看这段代码,结果是[0 2 3],很多人都能答对。func modify(s []int) { s[0] = 0}func main() { s := []int{1, 2, 3} modify(s) fmt.Println(s)}然后稍微改动一下,再猜一下结果func pop(s []int) { s = s[:len(s)-1]}func

open-falcon-hbs学习

open-falcon-hbs标签(空格分隔): go falcon主要功能处理agent心跳请求,填充host表ip白名单下发所有agent下发执行插件信息下发监控端口、进程缓存监控策略模块结构内存数据Map结构HostMap:(hostname, hostId int)HostGroupsMap:(hostId, groupsId []int)GroupPlugins:

独孤九剑(000) - 我为什么要做 Dit

又挖了一个深坑,不是没事专坑自己。只是想在无聊的时光里,找点乐子,找点事做。小时候,最令我着迷的就是邻家的 DVD。印象中的男主角都会经历三个阶段: 被虐->上山学艺->下山报仇。再长大一点,我成了金庸迷。被金大侠天马行空的想象力所折服,一个人的脑子里,怎么会容得下那么多东西,而且如此的自然,令人信服。巧合的是,那些快意恩仇的大侠们,也都有过独自修练的经历。后来,我迷上了电

独孤九剑(001) - 总决

总诀:“归妹趋无妄,无妄趋同人,同人趋大有。甲转丙,丙转庚,庚转癸。子丑之交,辰巳之交,午未之交。风雷是一变,山泽是一变,水火是一变。乾坤相激,震兑相激,离巽相激。三增而成五,五增而成九……”(共三千余字)独孤九剑讲究料敌先机,无招胜有招。在程序世界里,需要根据不同的需求不断的迭代。系统不能像剑法一样随手变更,往往需要花费无数个人月「最近体会到可以把变化做成接口,留给用户,

Golang模仿七牛图片处理API

之前一直在用qiniu的存储服务,生成图片的缩略图,模糊图,视频的webp,现在需要把存储移到s3上,那么这些图片,视频处理就要自己动手写了,本文梳理一下大致的思路。分析需求先看一下qiniu的接口是如何处理图片的,例如先截取视频第一秒的图片,再把图片缩略,最后存储到一个新的key,命令可以这么写 vframe/jpg/offset/1|imageMogr2/thumbna

Go 语言反射三定律

简介Reflection(反射)在计算机中表示 程序能够检查自身结构的能力,尤其是类型。它是元编程的一种形式,也是最容易让人迷惑的一部分。本文中,我们将解释Go语言中反射的运作机制。每个编程语言的反射模型不大相同,很多语言索性就不支持反射(C、C++)。由于本文是介绍Go语言的,所以当我们谈到“反射”时,默认为是Go语言中的反射。阅读建议本文中,我们将解释Go语言中反射的运