YTask 项目使用教程
1. 项目的目录结构及介绍
YTask 项目的目录结构如下:
YTask/
├── README.md
├── README.ZH.md
├── docs/
│ ├── _config.yml
│ └── index.md
├── examples/
│ ├── basic/
│ └── advanced/
├── ytask/
│ ├── client.go
│ ├── config.go
│ ├── server.go
│ └── utils.go
├── go.mod
├── go.sum
└── main.go
目录结构介绍
README.md
和README.ZH.md
:项目的介绍文档,分别用英文和中文编写。docs/
:项目的文档目录,包含配置文件和主页文档。examples/
:示例代码目录,包含基础和高级示例。ytask/
:核心代码目录,包含客户端、配置、服务器和工具类文件。go.mod
和go.sum
:Go 模块文件,用于管理项目依赖。main.go
:项目的启动文件。
2. 项目的启动文件介绍
项目的启动文件是 main.go
,其主要功能是初始化并启动 YTask 服务器。以下是 main.go
的简化代码示例:
package main
import (
"github.com/gojuukaze/YTask/v3"
"github.com/gojuukaze/YTask/v3/config"
)
func main() {
// 初始化配置
c := config.NewConfig()
c.Broker.SetBackend("redis", "localhost:6379", "")
c.Backend.SetBackend("redis", "localhost:6379", "")
// 启动服务器
server := YTask.NewServer(c)
server.Register("group1", "add", func(a int, b int) (int, error) {
return a + b, nil
})
server.Run()
}
启动文件介绍
main
函数:程序的入口点,负责初始化配置和启动服务器。config.NewConfig()
:创建一个新的配置实例。c.Broker.SetBackend
和c.Backend.SetBackend
:设置消息代理和后端的连接信息。YTask.NewServer(c)
:创建一个新的 YTask 服务器实例。server.Register
:注册任务处理函数。server.Run()
:启动服务器。
3. 项目的配置文件介绍
YTask 项目的配置主要通过代码进行设置,没有独立的配置文件。配置实例通过 config.NewConfig()
创建,并可以通过链式调用设置各种配置项。
配置项介绍
Broker.SetBackend
:设置消息代理的连接信息,支持多种消息中间件,如 Redis。Backend.SetBackend
:设置结果后端的连接信息,同样支持多种后端存储,如 Redis。
以下是一个配置示例:
c := config.NewConfig()
c.Broker.SetBackend("redis", "localhost:6379", "")
c.Backend.SetBackend("redis", "localhost:6379", "")
c.SetServerQueueSize(100)
c.SetServerConcurrency(10)
配置项说明
SetServerQueueSize
:设置服务器队列大小。SetServerConcurrency
:设置服务器并发数。
通过这些配置项,可以灵活地调整 YTask 服务器的行为,以适应不同的应用场景。