Only queue messages if the packet has too many
This commit is contained in:
parent
314ec304a7
commit
b614779290
@ -133,6 +133,10 @@ final class Receive extends Item
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Queue messages if there are too many in the packet.
|
||||||
|
if ($queue = ($po->count() > config('app.queue_msgs')))
|
||||||
|
Log::info(sprintf('%s: - Messages will be sent to the queue for processing',self::LOGKEY));
|
||||||
|
|
||||||
foreach ($po as $msg) {
|
foreach ($po as $msg) {
|
||||||
Log::info(sprintf('%s: - Mail from [%s] to [%s]',self::LOGKEY,$msg->fftn,$msg->tftn));
|
Log::info(sprintf('%s: - Mail from [%s] to [%s]',self::LOGKEY,$msg->fftn,$msg->tftn));
|
||||||
|
|
||||||
@ -140,7 +144,10 @@ final class Receive extends Item
|
|||||||
// @todo validate that the packet's zone is in the domain.
|
// @todo validate that the packet's zone is in the domain.
|
||||||
|
|
||||||
// Dispatch job.
|
// Dispatch job.
|
||||||
ProcessPacket::dispatch($msg);
|
if ($queue)
|
||||||
|
ProcessPacket::dispatch($msg);
|
||||||
|
else
|
||||||
|
ProcessPacket::dispatchSync($msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($po->errors->count()) {
|
if ($po->errors->count()) {
|
||||||
|
@ -18,6 +18,9 @@ return [
|
|||||||
'fido' => env('FIDO_DIR', 'fido'),
|
'fido' => env('FIDO_DIR', 'fido'),
|
||||||
'packet_keep' => env('FIDO_PACKET_KEEP', FALSE),
|
'packet_keep' => env('FIDO_PACKET_KEEP', FALSE),
|
||||||
|
|
||||||
|
// Number of messages in a packet that will result in them being queued for processing
|
||||||
|
'queue_msgs' => env('FIDO_QUEUE_MSGS', 50),
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|--------------------------------------------------------------------------
|
||||||
| Application Environment
|
| Application Environment
|
||||||
|
Loading…
Reference in New Issue
Block a user