Giden iletiler için Postfix azaltma


12

Belirli bir oranda (yerel PHP'den) giden iletileri göndermek için Postfix gerekir. Diyelim ki 120 saniyede bir mesaj. Bu hızı aşan tüm iletiler sıraya alınmalı (gecikmeli) ve daha sonra iletilmelidir.

Policyd aradığım şey değil. Gönderilen toplam mesaj sayısını sınırlandırmam gerekmiyor. Gönderilen iki mesaj arasında bir duraklamaya (120s) ihtiyacım var.

Bu yapılandırmayı denedim, ancak çalışmıyor:

initial_destination_concurrency = 1
default_destination_concurrency_limit = 1
default_destination_rate_delay = 120
default_destination_recipient_limit = 1
default_process_limit = 1

Herhangi bir öneri?

Yanıtlar:


7

Ayarlamanız gerekiyor

default_destination_recipient_limit = 2

1 yerine ayarlanırsa, sınır yalnızca alan adı için değil aynı alıcı için geçerlidir .



2

Giden e-postaları kısabilirsiniz:

default_destination_rate_delay = 1s

Postfix, aynı alıcı etki alanına her mesaj arasında 1 saniyelik bir gecikme ekleyecektir. Varsayılan değer 0s'dir.


0

Yukarıdaki yapılandırmanın çalışmadığını söylediğinizde, aynı hedefe veya farklı hedeflere çalışmıyor mu?

Bir öneri olarak, 25 numaralı bağlantı noktasına giden bağlantıları engellemek için bir açma / kapama iptables kuralı yazmak oldukça önemlidir. Bu benim bir sonraki önerim olacaktır.


Aynı e-posta adresi için bile çalışmıyor. Belirli bir e-postaya 100 mesaj yaklaşık 30 saniye içinde gönderilir.
Sergey Kovalev

0

Postaları çok hızlı gönderen istemcileri yavaşlatın

smtpd_client_connection_rate_limit = 100

smtpd_client_message_rate_limit = 100

smtpd_client_recipient_rate_limit = 200

smtpd_client_new_tls_session_rate_limit = 100

#

şuna bir bak


Çalışmayacak. Çok düşük bir orana ihtiyacım var. Bunun gibi bir şey: blah_blah_rate_limit = 0.01 Önerdiğiniz komutlar giden postalar için değil, giden postalar için.
Sergey Kovalev


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.