# talu **Repository Path**: ThinkingT/talu ## Basic Information - **Project Name**: talu - **Description**: No description available - **Primary Language**: Go - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-13 - **Last Updated**: 2026-06-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Talu 一个用于 Go 项目的工具库和 Web 框架封装。 ## 功能特性 ### Web 框架 - 基于 Gin 的 HTTP 服务器封装 - 支持 HTTP1.1 长连接(Keep-Alive) - 请求超时控制 - 请求限流保护 - 请求追踪(X-Request-ID) - 会话管理(Session) ### 加密模块 - SM2 非对称加密 - SM3 哈希算法 - SM4 对称加密 ### 工具函数 - 配置文件解析 - 日志记录 - 时间工具 - 文件操作 - Redis 客户端封装 - 数据库操作(XORM) - 消息队列(NATS) ## 安装 ```bash go get gitee.com/your-username/talu ``` ## 使用示例 ### 创建 Web 服务 ```go import "gitee.com/your-username/talu" // 使用默认配置 web, err := talu.New(nil) if err != nil { panic(err) } // 添加控制器 web.AddController(&MyController{}) // 启动服务 web.RunService("0.0.0.0", "8080") ``` ### 使用自定义配置 ```go web, err := talu.New(&talu.ServerConfig{ Debug: true, ReadTimeout: 20, WriteTimeout: 20, IdleTimeout: 120, SessionSecret: "your-secret-key", SecureCookie: true, }) ``` ## 环境变量 | 变量名 | 说明 | 默认值 | |--------|------|--------| | `TALU_SESSION_SECRET` | 会话密钥 | 自动生成 | | `TALU_LOG_LEVEL` | 日志级别 | info | ## 技术栈 - Go 1.25+ - Gin 1.10+ - XORM 0.7+ - Redis (redigo) - NATS - 国密算法(GM/T) ## 目录结构 ``` talu/ ├── web.go # Web 服务器实现 ├── controllers.go # 控制器和中间件 ├── db.go # 数据库操作 ├── redis.go # Redis 客户端 ├── mq.go # 消息队列 ├── sm2.go # SM2 加密 ├── sm3.go # SM3 哈希 ├── sm4.go # SM4 加密 └── ... ``` ## 许可证 MIT License