# Node Agent - 节点代理

## 📋 项目简介

Node Agent 是 Crawlful Hub 的节点代理，用于在分布式环境中执行任务，实现多节点协作和负载均衡。

## 🚀 核心功能

### 1. 任务执行
- 执行分配的任务
- 任务状态管理
- 任务结果上报

### 2. 节点管理
- 节点注册与发现
- 节点健康检查
- 节点负载均衡

### 3. 数据同步
- 与中心服务同步数据
- 本地缓存管理
- 数据一致性保证

### 4. 安全通信
- 加密通信
- 身份验证
- 权限控制

## 🏗 技术栈

- **框架**: Node.js
- **语言**: TypeScript
- **通信**: Socket.io
- **安全**: TLS/SSL

## 📦 快速开始

### 环境要求
- Node.js 16+

### 安装依赖

```bash
cd node-agent
npm install
```

### 配置环境变量

创建 `.env` 文件，配置以下环境变量：

```
# 服务器配置
PORT=3004

# 中心服务配置
CENTRAL_SERVER_URL=http://localhost:3003

# 节点配置
NODE_ID=node-1
NODE_NAME=Node 1
NODE_TYPE=worker

# 安全配置
API_KEY=your_api_key
```

### 启动服务

```bash
# 开发模式
npm run dev

# 生产模式
npm run build
npm start
```

## 📁 项目结构

```
node-agent/
├── src/
│   ├── index.ts         # 主入口
│   └── main.ts          # 主要逻辑
├── package.json         # 项目配置
├── tsconfig.json        # TypeScript 配置
└── README.md            # 项目说明
```

## 🔧 开发规范

### 代码规范
- 遵循 TypeScript 最佳实践
- 使用 ESLint 进行代码检查
- 文件命名使用 PascalCase

### 提交规范
- 提交信息使用中文描述
- 提交前确保代码通过测试
- 大型功能提交前创建分支

## 🤝 贡献

欢迎贡献代码和提出建议！请先阅读项目文档，然后提交 Pull Request。
