АРХИВА 10 Help

Очереди

Введение

Очереди играют ключевую роль в функционировании системы, обеспечивая эффективное управление данными и оптимизацию процессов. Они позволяют реализовать асинхронную обработку входящей почты, что минимизирует задержки и повышает скорость работы системы. В условиях высокой нагрузки, например, во время спам-атак, очереди помогают распределять объем задач, предотвращая перегрузку почтовых серверов и обеспечивая стабильность работы.

Кроме того, очереди повышают устойчивость к сбоям, позволяя системе продолжать функционировать даже в случае возникновения ошибок или нехватки ресурсов (например закончилось место в томе). Они гарантируют сохранность данных, пока проблемы не будут устранены. Очереди также упрощают организацию потоков данных, обеспечивая последовательность обработки сообщений и предотвращая конфликты.

Расположение корневого каталога очередей

В зависимости от операционной системы, расположение корневого каталога очередей по умолчанию:

/var/opt/mailarchiva/ROOT/queue

C:\ProgramData\MailArchiva\ROOT\queue

Структура папок очередей

Внутри корневой папки очередей находятся папки, каждая из которых соответствует определенной очереди. Названия этих папок указывают на тип очереди:

  • receive: очередь получения

  • index: очередь индексации

В некоторых случаях очереди группируются по типам соединений:

  • smtpclient: очереди клиента SMTP

    • connection-931f0fc9-e5bc-4d7a-bf72-8190e2bdc18b: очередь для клиента SMTP с идентификатором 931f0fc9-e5bc-4d7a-bf72-8190e2bdc18b

    • connection-5a5f8a0b-8b0b-4e3e-8c9c-8b0b5a5f8a0b: очередь для клиента SMTP с идентификатором 5a5f8a0b-8b0b-4e3e-8c9c-8b0b5a5f8a0b

Аналогично и для других очередей.

В любом случае папка очереди состоит:

  • ctl: база данных очереди

  • файлы: файлы, которые ждут обработки и записаны в базу данных очереди

Каждая из этих папок используется для хранения данных, связанных с соответствующими процессами обработки в системе. Это упрощает управление и доступ к очередям, а также обеспечивает четкую организацию файлов.

Настройка размеров очередей

Скорость записи исходных данных в очередь, как правило, превышает скорость её обработки (шифрования, сжатия и записи). Поэтому крайне важно правильно настроить размеры очередей. Это поможет предотвратить исчерпание доступного дискового пространства, когда очередь достигает своего максимального размера.

Настройка размера очередей получения (в Настройки | Общие | Архив) и индексирования (в Настройки | Основной | Индекс) позволяет ограничить общий объем занимаемого дискового пространства.

Изменение путей очереди

Рекомендуется размещать очереди в отдельном разделе на диске. Это связано с тем, что по умолчанию очереди находятся на том же разделе, что и другие файлы программы. В случае резкого увеличения трафика (например, во время DDoS-атаки или спама) очередь может быстро заполниться. Если место на диске закончится, вся система может оказаться непригодной для использования, так как многие компоненты АРХИВА, включая запись временных файлов, требуют достаточного свободного пространства.

Основные моменты работы с входящей почтой в АРХИВА

  1. Получение почты: При поступлении входящей почты через SMTP-соединение ей присваивается случайно сгенерированное имя файла с расширением .blob, и оно записывается на диск в очередь получения. Имя файла добавляется в базу данных очереди, находящуюся в каталоге ctl.

  2. Архивация и индексация: На этом этапе письмо еще не отображается в результатах поиска. Для этого оно должно быть заархивировано и проиндексировано. После успешной архивации (записи в хранилище тома) сообщение помещается в очередь индексации и становится доступным для поиска после успешной обработки. Обработанные файлы из очереди удаляются.

  3. Ресурсы и время обработки: Процессы архивирования и индексации требуют значительных вычислительных ресурсов и времени, что обычно делает их более длительными по сравнению с записью необработанных данных в очередь получения.

  4. Увеличение трафика: При резком увеличении трафика данные могут накапливаться в очередях. Если количество элементов превышает максимальные размеры, сервер будет ожидать освобождения места для нового запроса, и в противном случае отклонит соединение с SMTP кодом повторной попытки 421 или 451.

  5. Проблемы с обработкой: В неблагоприятных ситуациях механизм очередей может не справиться с обработкой элементов для архивирования из-за отсутствия настроенного тома или проблем с записью. В таких случаях письма будут накапливаться до заполнения очереди, после чего сервер начнет отклонять входящий трафик.

Как восстановить потерянные элементы очереди

В редких случаях база данных (каталог ctl), отвечающая за организацию очередей, может повредиться. Это может произойти из-за нехватки места на диске в разделе очереди, внезапного отключения питания или других причин. В результате потерянные элементы могут в паке очереди, но механизм очередей не сможет их обработать, так как не будет о них знать.

Чтобы восстановить потерянные элементы очереди в случае повреждения базы данных, выполните следующие шаги:

  1. Остановите сервер. Убедитесь, что все процессы завершены, чтобы избежать дальнейших проблем.

  2. Переименуйте каталог очереди. Добавьте префикс restore_ к наименованию каталога очереди. Например, если ваш каталог называется receive, переименуйте его в restore_receive.

  3. Запустите сервис. После переименования запустите сервер заново.

После перезапуска архивной системы она автоматически обнаружит сообщения в папке restore_receive и обработает их, а именно добавит их в очередь получения.

15 October 2024