Comments (2)
ClamAV holds the search strings using the classic string (Boyer Moore) and regular expression (Aho Corasick) algorithms. Being algorithms from the 1970s they are extemely memory efficient.
The problem is the huge number of virus signatures. This leads to the algorithms' datastructures growing quite large.
You can't send those datastructures to swap, as there are no parts of the algorithms' datastructures accessed less often than other parts. If you do force pages of them to swap disk, then they'll be referenced moments later and just swap straight back in. (Technically we say "the random access of the datastructure forces the entire datastructure to be in the process's working set of memory".)
The datastructures are needed if you are scanning from the command line or scanning from a daemon.
You can't use just a portion of the virus signatures, as you don't get to choose which viruses you will be sent, and thus can't tell which signatures you will need.
From: https://unix.stackexchange.com/questions/114709/how-to-reduce-clamav-memory-usage
from docker-clamav.
This repo is only for making ClamAV work with docker.
Performance issues should be questioned to ClamAV or Alpine directly.
In general an increase of ram allocation on startup of the image is usual.
You could dive into memory consumption inside the image with top, Lime or Votality or other tools and report your results.
from docker-clamav.
Related Issues (20)
- init contributors HOT 62
- detailed logs for clamav HOT 2
- bootstrap.sh crashes container HOT 1
- Question to help fix a configuration HOT 4
- Clamd was NOT notified: Can't connect to clamd through /var/run/clamav/clamd.ctl: Connection refused HOT 4
- Container Won't Start Up HOT 12
- Reasoning for non-default config options HOT 2
- ClamAV installation is outdated HOT 1
- upgrade libcrypto1.1 and libssl1.1 for vulnerability issue HOT 5
- upgrade busybox, ssl_client , zlib and libcurl for vulnerability issues HOT 1
- upgrade gzip and zlib1g for vulnerability issues HOT 3
- mkodockx/docker-clamav:alpine-idb-amd64 does not respond in Azure HOT 2
- Root Login to Container HOT 4
- Upgrade openssl to the newer version (>1.1.1q-r0) for fixing the CVE-2022-2097 HOT 2
- Custom Dockerfile From ClamAV Base Image with Server HOT 1
- Update Error HOT 1
- Clamd was NOT notified: Can't connect to clamd through /var/run/clamav/clamd.ctl: No such file or directory HOT 2
- docker image rebuild HOT 2
- Memory Spike / Slowly decrease over time HOT 3
- Still maintained?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from docker-clamav.