定制 kearth/tea 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

kearth/tea

Composer 安装命令:

composer create-project kearth/tea

包简介

A PHP Framework

README 文档

README

Tea是一个轻量级、高性能的Go语言Web框架,专为快速构建HTTP服务而设计。框架基于模块化架构,提供简洁的API接口,帮助开发者高效地创建Web应用。

框架特点

  • 轻量级设计:核心代码简洁,易于理解和扩展
  • 高性能HTTP服务器:基于goframe/ghttp实现,支持高并发
  • 路由管理:支持路由分组、中间件和静态文件服务
  • API文档生成:内置Swagger/OpenAPI支持,便于API文档管理
  • 优雅的错误处理:统一的错误处理机制和日志记录
  • 灵活的配置系统:支持多环境配置管理
  • 单元化架构:基于Unit的服务管理机制,便于组件管理和生命周期控制

安装

安装框架库

go get github.com/kearth/tea

安装命令行工具 (tf)

go install github.com/kearth/tea/cli/cmd/tf@latest

安装完成后,您可以通过以下命令验证tf工具是否正确安装:

tf version

使用tf工具初始化项目

tf init your-project-name -o your-project-dir -m your-module-name

参数说明:

  • <name>: 项目名称(必需)
  • --output, -o: 输出目录(可选,默认为当前目录下的项目名称)
  • --module, -m: Go模块路径(可选,默认为'example.com/' + 项目名称)

快速开始

创建基本应用

package main

import (
    "github.com/kearth/klib/kctx"
    "github.com/kearth/tea"
)

func main() {
    // 创建一个简单的Tea应用
    tea.Drink(kctx.New(), func(ctx kctx.Context) {
        // 在这里可以添加自定义初始化逻辑
    })
}

添加HTTP路由

package main

import (
    "github.com/gogf/gf/v2/net/ghttp"
    "github.com/kearth/klib/kctx"
    "github.com/kearth/tea"
    "github.com/kearth/tea/frame/server/httpserver"
)

func main() {
    tea.Drink(kctx.New(), func(ctx kctx.Context) {
        // 获取HTTP路由
        router := httpserver.NewHTTPRouter()
        
        // 添加中间件
        router.AddMiddleware(func(r *ghttp.Request) {
            r.Response.Writeln("Hello from middleware!")
            r.Middleware.Next()
        })
        
        // 添加路由处理
        router.AddBind(func(r *ghttp.Request) {
            r.Response.Writeln("Hello, Tea Framework!")
        })
        
        // 创建路由组
        router.Group("/api", func(group *httpserver.Group) {
            group.Bind("/user", func(r *ghttp.Request) {
                r.Response.Writeln("User API")
            })
        })
    })
}

目录结构

Tea框架采用清晰的目录结构组织代码:

  • frame/ - 框架核心组件
    • base/ - 基础功能和工具
    • env/ - 环境变量和配置管理
    • server/ - 服务器相关实现
      • httpserver/ - HTTP服务器实现
  • internal/ - 内部实现
    • bootstrap/ - 框架引导程序
    • tea/ - 核心实现
  • cli/ - 命令行工具
  • examples/ - 示例项目

核心功能

HTTP服务器

Tea框架提供了强大的HTTP服务器功能,支持:

  • 路由管理和分组
  • 中间件机制
  • 静态文件服务
  • Swagger/OpenAPI文档
  • 优雅启动和关闭

配置管理

支持多环境配置,可通过配置文件或环境变量进行配置。

日志系统

集成了日志记录功能,支持不同级别的日志输出。

示例项目

框架提供了完整的示例项目,位于examples/目录下,展示了如何使用Tea框架构建完整的Web应用。

版本信息

当前版本:v0.1.0

许可证

详细许可证信息请参阅 LICENSE 文件。

特别鸣谢

本项目依赖 GoFrame v2 框架,感谢 GoFrame 团队提供的优秀开源作品。

GoFrame 作为一个全功能的 Go 语言框架,为 Tea Framework 提供了强大的底层支持,特别是在 HTTP 服务器、路由管理和配置系统等方面。Tea Framework 在 GoFrame 的基础上进行了轻量级封装和扩展,旨在提供更简洁的 API 和更灵活的应用构建体验。

kearth/tea 适用场景与选型建议

kearth/tea 是一款 基于 Go 开发的 Composer 扩展包,目前已累计 2 次下载、GitHub Stars 达 0, 最近一次更新时间为 2020 年 11 月 12 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 kearth/tea 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 kearth/tea 我们能提供哪些服务?
定制开发 / 二次开发

基于 kearth/tea 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 2
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 11
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: Go

其他信息

  • 授权协议: Apache-2.0
  • 更新时间: 2020-11-12