naza

module
v0.18.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 1, 2021 License: MIT

README


Go语言基础库





        


工程目录说明

pkg/                     ...... 源码包
    |-- assert/          ...... 提供了单元测试时的断言功能,减少一些模板代码
    |-- bele/            ...... 大小端转换操作
    |-- bininfo/         ...... 将编译时源码的git版本信息(当前commit log的sha值和commit message),编译时间,Go版本,平台打入程序中
    |-- circularqueue    ...... 底层基于切片实现的固定容量大小的FIFO的环形队列
    |-- connection/      ...... 对net.Conn接口的二次封装
    |-- defertaskthread  ...... 执行延时任务
    |-- fake/            ...... 实现一些常用的接口,hook一些不方便测试的代码
    |-- filebatch/       ...... 文件批处理操作
    |-- filesystemlayer/ ...... 对文件操作的封装,可以使用内存作为磁盘使用
    |-- nazaatomic/      ...... 原子操作
    |-- nazabits/        ...... 位操作
    |-- nazaerrors/      ...... error相关
    |-- nazahttp/        ...... http操作
    |-- nazajson/        ...... json操作
    |-- nazalog/         ...... 日志库
    |-- nazamd5/         ...... md5操作
    |-- nazanet/         ...... socket操作相关
    |-- nazareflect/     ...... 利用反射做的一些操作
    |-- nazastring/      ...... string和[]byte相关的操作
    |-- unique/          ...... 对象唯一ID
    |-- nazasync/        ...... 对sync的封装,比如定位sync.Mutex死锁
    |-- taskpool/        ...... 非阻塞协程池,协程数量可动态增长,可配置最大协程并发数量,可手动释放空闲的协程
    |-- bitrate/         ...... 计算带宽
    |-- ratelimit/       ...... 限流器,令牌桶,漏桶
    |-- lru/             ...... LRU缓存
    |-- consistenthash/  ...... 一致性哈希
    |-- crypto/          ...... 加解密操作
    |-- slicebytepool/   ...... []byte内存池
    |-- snowflake/       ...... 分布式唯一性ID生成器
    |-- ic/              ...... 将整型切片压缩成二进制字节切片
playground/              ...... Go实验代码片段
demo/                    ...... 示例相关的代码
bin/                     ...... 可执行文件编译输出目录

依赖

无任何第三方依赖

相关文档

https://pengrl.com/categories/Go/

联系我

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

项目名 naza 由来

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

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

Directories

Path Synopsis
demo
pkg
assert
package assert 提供了单元测试时的断言功能,减少一些模板代码
package assert 提供了单元测试时的断言功能,减少一些模板代码
bele
Package bele 提供了大小端的转换操作 be是big endian的缩写,即大端 le是little endian的缩写,即小端 assume local is `le`
Package bele 提供了大小端的转换操作 be是big endian的缩写,即大端 le是little endian的缩写,即小端 assume local is `le`
bininfo
Package bininfo 将编译时源码的git版本信息(当前tag,commit log的sha值和commit message,是否有未提交的修改),编译时间,Go版本,编译、运行平台打入程序中 编译时传入这些信息的方式见 naza 的编译脚本: https://github.com/cfeeling/naza/blob/master/build.sh
Package bininfo 将编译时源码的git版本信息(当前tag,commit log的sha值和commit message,是否有未提交的修改),编译时间,Go版本,编译、运行平台打入程序中 编译时传入这些信息的方式见 naza 的编译脚本: https://github.com/cfeeling/naza/blob/master/build.sh
connection
package connection 注意,这个package还在开发中 对 net.Conn 接口的二次封装,目的有两个: 1.
package connection 注意,这个package还在开发中 对 net.Conn 接口的二次封装,目的有两个: 1.
ic
package ic 将整型切片压缩成二进制字节切片
package ic 将整型切片压缩成二进制字节切片
lru
nazalog
package nazalog 日志库
package nazalog 日志库
taskpool
非阻塞协程池,协程数量可动态增长,可配置最大协程并发数量,可手动释放空闲的协程
非阻塞协程池,协程数量可动态增长,可配置最大协程并发数量,可手动释放空闲的协程
unique
package unique 对象唯一ID
package unique 对象唯一ID
playground
p12
p13
p3
p4

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL