Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for multiple ClamAV instances #3455

Closed
3 tasks
Tracked by #3358
timoballard opened this issue Feb 27, 2024 · 1 comment
Closed
3 tasks
Tracked by #3358

Add support for multiple ClamAV instances #3455

timoballard opened this issue Feb 27, 2024 · 1 comment
Assignees
Labels

Comments

@timoballard
Copy link
Contributor

timoballard commented Feb 27, 2024

Epic: #3358

Background

Some recent ClamAV benchmarking work demonstrates that AV scan performance degrades substantially as the number of concurrent scan requests increases. To minimize unacceptable long upload times as traffic increases in March, we should spin up redundant ClamAV instances so that we can split the load between them.

There won't be an actual load balancer mediating the traffic between the FAC and the ClamAV instances, so we'll need to implement some rudimentary load balancing inside the application. For our purposes, it should suffice to pick randomly from the set of available ClamAV instances rather than complicate the picture by trying round-robin.

We're done when

  • The AV scan step of the file upload pipeline is routed randomly to one of the configured ClamAV instances
  • Over time, the requests to the ClamAV instances distributed (approximately) uniformly
  • The FAC continues to work as expected with a single ClamAV instance
@phildominguez-gsa
Copy link
Contributor

It's been determined this isn't needed, as we can set the number of instances running in Terraform and CF handles load balancing for us. Example.

@phildominguez-gsa phildominguez-gsa closed this as not planned Won't fix, can't repro, duplicate, stale Feb 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: Done
Development

No branches or pull requests

2 participants