nsq源码学习 简介 nsq 是用go语言实现的分布式队列。阅读源码对go语言的chanel,分布式有着更好的理解 代码结构 核心代码分位3部分: nsqd:队列数据存储 nsqlookup:管理nsqd节点,服务发现 …
分类:go教程
1. Go 性能调优之 —— 基准测试
原文链接: https://github.com/sxs2473/go… 本文使用 Creative Commons Attribution-ShareAlike 4.0 International 协议进行…
io.Reader游标引发的血案
背景 线上运行了一个图片合成程序,默认的小程序二维码中奖是小程序LOGO,不满足需求,所以将微信小程序二维码和用户头像合成在一张图片。由于微信图片有时候返回的Content-Type不对应(比如内容是PNG的,头确是im…
Go的map中删除子map,内存会自动释放吗?
结论 在Go中,map中存放map,上层map执行delete,子层map占用的内存会释放,无需手动先释放子map内存,再在上层map执行删除。 实验 在C++中,如果使用了map包含map的数据结构,当要释放上层map…
EasyProxy,简单易用的tcp代理
EasyProxy,简单易用的tcp代理 最近工作中遇到了golang的项目,稍稍对其产生了点兴趣,打算认真学习下,正巧在搭建mysql主备环境的时候发现如果用一个代理程序的话自己测试会方便很多(主要还是为了造轮子),于…
Go 1.8rc3 源代码学习:scanner
前言 scanner package 包含了 golang 词法分析器相关的数据结构和方法,源代码位于 <go-src>/src/go/scanner example_test.go example_test…
golang中的net/rpc包使用概述
RPC,即 Remote Procedure Call(远程过程调用),说得通俗一点就是:调用远程计算机上的服务,就像调用本地服务一样。 我的项目是采用基于Restful的微服务架构,随着微服务之间的沟通越来越频繁,消耗…
k8s :kube-apiserver 启动流程 - 1
前言 看 k8s 源代码有一段时间,总感觉在迷宫里乱窜,有时候觉得终于找到出口了,一下子又撞墙了,总结下来还是自己的内功不够深厚,本文是对 kube-apiserver Legacy(遗留,即将废弃)API 初始化流程(…
Go基础学习记录之Web开发的博客编辑功能之Model查询重构
每次我都会将自己实践的代码放到github上并且都会打一个tag,方便后面用的同学使用,这里我以下面分支的代码进行实践分享 https://github.com/durban89/typescript_demo.git …
单机 Go 服务部署参考
笔者很想有 Go 的实战项目经验,无奈目前公司暂未给出实战机会,所以只得在自己的博客项目上折腾一番。之前博客是用 PHP 的 Laravel 写的,前段时间将其后端全部用 Go 重写了一遍,然后在部署上栽了坑。 如果是单…
【Go】优雅的读取http请求或响应的数据-续
原文链接:https://blog.thinkeridea.com/… 之前发布 【Go】优雅的读取http请求或响应的数据 文章,网友 “wxe” 咨询:“优化前后的请求耗时变化有多大”,之前只分析了内存分…
Golang 日期/时间包的使用
golang 的日期时间包:time 的使用方式。 time package 包含了 time.Time 时间对象 及 构建此时间对象的一些方法(time.Unix(), time.Parse()) golang 可精确…