Design a system where client can upload a file and viruses need to be scanned

Create a system like:
https://support.virustotal.com/hc/en-us/articles/115002126889-How-it-works
a example could be : https://www.virustotal.com/gui/file/0bf01094f5c699046d8228a8f5d5754ea454e5e58b4e6151fef37f32c83f6497/detection

so basically apis where a user uploads a file and is scanned by multiple virus vendors. Some of the requirements are:

  1. Ability to run scripts and virus scanners on the files to extract information
    what kind of workflow and scanning engine we need? how do we detect failures? how is data stored
  2. Addition of new scripts on the fly
  3. what kind of metrics we need for healthy monitoring

non functional

  1. system should be real time
  2. system should be scalable for millions of users
  3. file size can be between 50 kb to 2 gb
  4. scanning service can be runned on different Operating systems. Not all scanning service are the same
Comments (9)