On 4/4/09, Giuseppe Ghibò <gh...@mandriva.com> wrote: > In amavisd-new documentation README.postfix (version 148, > BTW, the release online is outdate, as reports version 122 > see http://www.ijs.si/software/amavisd/README.postfix) > there is reported that using amavisfeed_destination_concurrency_limit = XX > is an alternative way to master.cf for controlling the maximum numbers of > concurrent processes (which should be in sync with amavis $max_servers). > Indeed I found that > the number of concurrent lmtp processes named amavisdfeed > exceed 1 unit the number in amavisfeed_destination_concurrency_limit. E.g. > if I have amavisfeed_destination_concurrency_limit = 2, I get 3 > amavisfeed lmtp processes running, > if I have amavisfeed_destination_concurrency_limit = 1 I get 1 lmtp > process running and so on.
I may be misunderstanding, but are you looking at the number of amavisd proceses running? If $max_servers is set to 2, you get one master and two child processes. Changing amavisfeed_destination_concurrency_limit limits the number of messages that Postfix will ask amavisd-new to process concurrently (not the number of amavisd processes that run). The number of child amavisd processes running must be equal to the number of messages it will be concurrently sent. You can have more amavisd processes running if you like, but this just wastes memory because they will not be fed any messages. If you use amavisd-release often, it's actually a good idea to have a spare amavisd child running to process the release requests in case all the other processes are busy processing messages from Postfix. Typically more than one $max_servers would be used, and typically amavisfeed_destination_concurrency_limit (or maxproc for the amavisfeed transport) would be set to more than one. Also see: http://marc.info/?l=postfix-users&m=120612390511480 > On the other hand setting such limit in master.cf won't exceed the > specified number. > > Are you obtaining the same behaviour? Furthermore I get also that > postconf <transport>_destination_concurrency_limit doesn't show any output > (probably works only with internal vars). Yes, I think that is the case. > Anyway seems also that > using <transport>_destination_concurrency_limit has a weird behaviour, > e.g. if you specify it to 1, the meaning changes from global (per-domain) > to per-recipient (e.g. see this thread > http://archives.neohapsis.com/archives/postfix/2007-11/1466.html). > > Bye > Giuseppe. It would be rare to use 1. If we are talking about your server that is a dual quad Zeon with 12GB ram, I would start out with something more like 20 or 30. I noticed in another thread that you are experiencing high latency due to network tests. Network tests are a vital part of spam detection and spamassassin does not work effectively without them. Most of the delay is caused by waiting for answers from remote servers (and getting timeouts for various reasons). To help with that, an effective thing to do is to increase concurrency by increasing the number of processes ($max_servers and complimentary amavisfeed_destination_concurrency_limit) up to a certain sweet spot, where you are processing as much mail as quickly as possible. Setting the number too high makes a mess and greatly decreases performance. http://www.ijs.si/software/amavisd/README.performance.txt Also, it's highly beneficial to run a local DNS cache. This increases speed and effectiveness of network tests. -- Gary V ------------------------------------------------------------------------------ _______________________________________________ AMaViS-user mailing list AMaViS-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/amavis-user AMaViS-FAQ:http://www.amavis.org/amavis-faq.php3 AMaViS-HowTos:http://www.amavis.org/howto/