log4go源码分析(一)
之前记录的一篇日志博文log4go源码分析只是占了个坑,没写具体内容。一直想研究分享几个开源项目提高提高,但由于工作忙一直没时间。今天把业余时间总结的log4go源码分析的第一篇记录下来。Java中有个log4j,是著名的开源日志框架,可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器等。我们也可以控制每一条日志的输出格式,通过定义每一条日志信息的级别,我们能够更加细致地....
Go语言—sync.Cond源码分析
原文链接 Cond的主要作用就是获取锁之后,wait()方法会等待一个通知,来进行下一步锁释放等操作,以此控制锁合适释放,释放频率,适用于在并发环境下goroutine的等待和通知。 针对Golang 1.9的sync.Cond,与Golang 1.10一样。 源代码位置:synccond.go。 结构体 type Cond struct { noCopy noCopy // noC...

雪崩利器 hystrix-go 源码分析
阅读源码的过程,就像是在像武侠小说里阅读武功秘籍一样,分析高手的一招一式,提炼出精髓,来增强自己的内力。 之前的帖子说了一下微服务的雪崩效应和常见的解决方案,太水,没有上代码怎么叫解决方案。github上有很多开源的库来解决雪崩问题,比较出名的是Netflix的开源库hystrix。集流量控制、熔断、容错等于一身的java语言的库。今天分析的源码库是 hystrix-go,他是hystrix的.....
Kubernetes Client-go Informer 源码分析
几乎所有的Controller manager 和CRD Controller 都会使用Client-go 的Informer 函数,这样通过Watch 或者Get List 可以获取对应的Object,下面我们从源码分析角度来看一下Client go Informer 的机制。 kubeClient, err := kubernetes.NewForConfig(cfg) if err !=.....
go gomemcache包源码分析
因为beego中的cache模块中的子模块memcached引用了这个包,所以也对这包的源码进行分析了下。花了一定的时间编写整理这篇博客,这个包一共两个文件,源码文件。关于memcache学习,可以到http://www.runoob.com/memcached/memcached-tutorial.html这边教程学习 1)func New(server ...string) *Client用....

go-hbase的Scan模型源码分析
git地址在这里:https://github.com/Lazyshot/go-hbase 这是一个使用go操作hbase的行为。 分析scan行为 如何使用scan看下面这个例子,伪代码如下: func scan(phone string, start time.Time, end time.Time) ([]Loc, error) { ... client := hba...
go-home源码分析----一款针对12306的火车票订票软件
项目地址:http://code.google.com/p/go-home/,源代码svn地址: http://go-home.googlecode.com/svn/trunk/ 去年出的一款比较老的订票软件,现在可能已经失效了,只是拿来学习下基本的订票流程,方便对其他订票脚本的研究。 基本流程图: 1, 获取图片验证码 提交请求给https://dynamic.12306.cn/o...
Go语言HTTP Server源码分析
Go语言中HTTP Server: HTTP server,顾名思义,支持http协议的服务器,HTTP是一个简单的请求-响应协议,通常运行在TCP之上。通过客户端发送请求给服务器得到对应的响应。 HTTP服务简单实现 package main import ( "fmt" &nbs...
本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。
开发与运维
集结各类场景实战经验,助你开发运维畅行无忧
+关注