Skip to content

q191201771/naza

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Feb 18, 2025
077ea36 · Feb 18, 2025
May 20, 2024
Nov 13, 2021
Feb 17, 2025
May 4, 2020
Mar 2, 2022
Jan 17, 2021
Feb 18, 2025
Aug 27, 2019
Feb 18, 2025
Nov 27, 2021
Oct 12, 2019
Oct 31, 2021
Nov 15, 2019
Oct 16, 2019

Repository files navigation


Go语言基础库






工程目录说明

pkg/                     ...... 源码包
    |-- nazabits/        ...... 流式位操作
    |-- nazalog/         ...... 日志库
    |-- defertaskthread  ...... 执行延时任务
    |-- connection/      ...... 对net.Conn接口的二次封装
    |-- taskpool/        ...... 非阻塞协程池,协程数量可动态增长,可配置最大协程并发数量,可手动释放空闲的协程
    |-- nazajson/        ...... json操作

    |-- nazanet/         ...... socket操作相关
    |-- assert/          ...... 提供了单元测试时的断言功能,减少一些模板代码
    |-- bele/            ...... 大小端转换操作
    |-- bininfo/         ...... 将编译时源码的git版本信息(当前commit log的sha值和commit message),编译时间,Go版本,平台打入程序中
    |-- circularqueue    ...... 底层基于切片实现的固定容量大小的FIFO的环形队列
    |-- dataops/         ...... 数据处理
    |-- fake/            ...... 实现一些常用的接口,hook一些不方便测试的代码
    |-- filebatch/       ...... 文件批处理操作
    |-- filesystemlayer/ ...... 对文件操作的封装,可以使用内存作为磁盘使用
    |-- mock/            ...... 模拟一些标准库中的常用接口,方便测试
    |-- nazaatomic/      ...... 原子操作
    |-- nazabytes/       ...... 字节切片,内存块操作
    |-- nazacolor/       ...... 控制台打印颜色相关
    |-- nazaerrors/      ...... error相关
    |-- nazahttp/        ...... http操作
    |-- nazamd5/         ...... md5操作
    |-- nazareflect/     ...... 利用反射做的一些操作
    |-- nazastring/      ...... string和[]byte相关的操作
    |-- unique/          ...... 对象唯一ID
    |-- nazasync/        ...... 对sync的封装,比如定位sync.Mutex死锁
    |-- chartbar/        ...... ascii柱状图
    |-- bitrate/         ...... 计算带宽
    |-- ratelimit/       ...... 限流器,令牌桶,漏桶
    |-- lru/             ...... LRU缓存
    |-- consistenthash/  ...... 一致性哈希
    |-- crypto/          ...... 加解密操作
    |-- slicebytepool/   ...... []byte内存池
    |-- snowflake/       ...... 分布式唯一性ID生成器
playground/              ...... Go实验代码片段
demo/                    ...... 示例相关的代码

依赖

无任何第三方依赖

联系我

欢迎扫码加我微信,进行技术交流或扯淡。

项目名 naza 由来

本仓库主要用于存放我自己写的一些 Go 基础库代码。目前主要服务于我的另一个项目: lal

naza 即哪吒(正确拼音为 nezha,我女儿发音读作 naza,少一个字母,挺好~),希望本仓库以后能像三头六臂,有多种武器的哪吒一样,为我提供一个趁手的工具箱。