Commit Graph
18 Commits
Author SHA1 Message Date
F4ilji 75f9c73dc7 fix(php): добавить /usr/local/bin в open_basedir для работы composer 2026-04-07 18:34:46 +05:00
F4ilji 04adba6682 Changes 2026-04-07 17:47:00 +05:00
F4iljiandQwen-Coder c115a5c7a7 fix(IMAP): оптимизация обработки email для предотвращения memory exhaustion
Корневая проблема: библиотека webklex/php-imap загружала все тела писем
по умолчанию, что приводило к исчерпанию 256MB памяти при 50+ письмах.

Решение (3 уровня):

Уровень 1 - Конфигурация:
- config/imap.php: добавлены fetch_body=false, fetch_flags=false, fetch_limit=20
- php.ini: увеличен memory_limit с 256M до 1G, добавлены OPcache настройки

Уровень 2 - Оптимизация кода:
- FetchUnreadEmailsTask: setFetchBody(false), лимиты, MemoryAwareTrait
- FetchEmailNewsAction: batch-обработка (10 писем), gc_collect_cycles()
- DownloadAttachmentsTask: lazy load вложений, extension whitelist (security)
- ConnectToImapTask: MemoryAwareTrait для мониторинга

Уровень 3 - Инфраструктура:
- ProcessEmailNewsJob: queue job для асинхронной обработки (3 попытки, 300s timeout)
- FetchEmailNewsCommand: поддержка --async режима
- MemoryAwareTrait: reusable трейт для мониторинга памяти

Security fixes:
- Extension whitelist для предотвращения path traversal
- Убраны реальные email из config/imap.php
- Добавлена проверка на null message объект

Docs:
- README_EMAIL_OPTIMIZATION.md: полная документация по оптимизации

Fixes: Allowed memory size of 268435456 bytes exhausted

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-04-06 22:08:03 +05:00
F4ilji 1256adba98 changes 2026-03-23 10:50:31 +05:00
F4ilji a3948c872e Changes 2026-03-20 21:47:02 +05:00
F4ilji be68399ab8 changes Dockerfile 2025-08-11 17:55:07 +05:00
F4ilji e62b442991 Error correction and preparation of the project for initial deployment 2025-08-11 16:12:10 +05:00
F4ilji ab0eb1d3ab start supervisor 2025-04-27 19:35:41 +05:00
f4ilji 34a4516273 Changes 2025-01-11 13:28:38 +05:00
f4ilji a4dd863c80 Changes 2025-01-10 13:39:25 +05:00
f4ilji accdf0da3e Changes 2025-01-10 00:29:21 +05:00
f4ilji 083a115ada Changes 2024-11-20 20:21:16 +05:00
f4ilji 431755ab9b Changes 2024-11-20 18:54:29 +05:00
f4ilji af69b48247 Changes 2024-11-17 01:33:09 +05:00
f4ilji 63e760872b Changes 2024-11-02 15:46:48 +05:00
f4ilji 34983efe79 Changes 2024-11-02 13:14:37 +05:00
f4ilji db9849e3f4 Changes 2024-11-01 00:38:22 +05:00
f4ilji b686638a39 first commit 2024-09-19 16:06:49 +05:00