背景

公司产品的日志都是加密过的,需要写一个Web服务:公司的同事可以上传加密过的日志文件,后台解密后再下载。

问题分析

  1. 日志文件有多大?上传中断了怎么办?
  2. 多个日志文件如何批量处理?
  3. 日志解密是I/O密集型任务,如何保证并发以及快速响应?
  4. 日志处理成功后,给用户怎样的反馈?
  5. 前后端的技术栈选型?
  6. 用户交互流程?

实现

  1. 大文件切片、断点续传
  2. zip压缩
  3. Golang 协程
  4. Golang + React