随笔分类 - Golang
2019.10.24
摘要:前言 如何“优雅的轮询”,是生产环境中很常见一种场景, 所谓“优雅”,即在均衡分配的基础上,要保证连续的请求不能连续分配到某一个后端节点上; 可以理解为时间上的连续请求,要尽量分配到物理上的不同节点,避免某段时间内后端单台节点压力过大。 算法描述 On each peer selection we
阅读全文
摘要:实现基本的进程守护功能 package main import ( "context" "fmt" "github.com/shirou/gopsutil/v3/process" "os" "os/exec" "os/signal" "syscall" "time" ) var CMD *exec.
阅读全文
摘要:什么是C10K? C10K 就是 Client 10000 问题,即 “在同时连接到服务器的客户端数量超过 10000 个的环境中,即便硬件性能足够, 依然无法正常提供服务。”, 简而言之,就是单机1万个并发连接问题。 这个概念最早由 Dan Kegel 提出并发布于其个人站点。 解决方案就是IO多
阅读全文
摘要:golang多协程并发工作 package main import ( "fmt" "log" "os" "sync" "time" ) type Task struct { Name string Age int } func work(wg *sync.WaitGroup, jobs chan
阅读全文
摘要:模拟beego登陆 package main import ( "fmt" "time" "io/ioutil" "net/url" "net/http" "net/http/cookiejar" ) func main() { now := time.Now() var err error var
阅读全文