A possible solution for load balancing is to introduce a new map
type that makes random selection.

randmap:/file/name

    The file contains a list of reponses, one response per line,
    ignoring leading whistespace, trailing whitespace, and empty
    lines.  Each map query returns a randomly-selected response.

randmap:!one!two!three

    Split the text after ":" on the first character, producing a
    list of responses (one, two, three). Each map query returns a
    randomly-selected response.

That should be enough to load-balance deliveries over mail delivery
transports.

The following example will deliver local mail locally and load-balance
non-local mail over smtp0: and smtp1:.

/etc/postfix/main.cf:
    transport_maps = hash:/etc/postfix/transport, randmap:!smtp0:!smtp1:

/etc/postfix/transport:
    example.com         local:
    mail.example.com    local:

To implement different weight factors, repeat smtp0: and smtp1: a
different numbers of times.

        Wietse

Reply via email to