一个简易gopool框架

提纲

  • 目标
  • 效果图
  • 传送门

目标

在 go 中起协程是非常方便的, 节省资源的, 协程栈大小最大为2KB, 所以乍一看在 go 中设计协程池是多此一举的;
但通过 pool 可以提供统一的多任务处理模型,统一管理任务处理过程中的监控、告警;
且实现资源隔离(不同协程池处理不同类型任务);
最重要的一点: 通过确定数量的 worker 可以实现对大事务请求的异步处理, 提升系统吞吐量, 防止频繁的 new 协程模式;

效果

image.png

传送门

pool.go -> Execute() 有详细的task 接收处理流程
https://github.com/markfork/gopool.git

你可能感兴趣的:(一个简易gopool框架)