Lemon-go 设计文档


(Frederic Chan) #1

主要功能

  • 在用户端为每课爬取数据,并给予可视化的反馈,增长用户信心

Todo

业务流程

  • 周期检查本机任务列表,如果较少则从服务器获取任务列表(GET /task)补充到本地列表
  • 主线程检查本地列表,进行爬取,把结果反馈给服务器
  • metrics 协程定期将统计信息输出到日志(未来发送到lemon-tree)
  • 如果失败,则爬取周期开始增长;如果成功且间隔>1s,则爬取周期减少
  • 一个线程获取服务器全局状态(GET /status),打到日志给用户积极反馈
  • Sentry 接入,监控客户端 exception

其他事项

参数

  • --server localhost:5005:服务器地址

独立版本展望

  • 独立版本中增加安全方面的考虑