Оптимизация и Использование

Рекомендации по использованию ZENLIX в высоко нагруженной среде

Используйте REDIS вместо БД

Замените в редакторе конфигурации или в .env значения

CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=database

на следующие значения:

CACHE_DRIVER=redis
SESSION_DRIVER=redis
QUEUE_DRIVER=redis

REDIS гораздо быстрее обрабатывает очереди, хранит кеш-файлы и данные о сессии в оперативной памяти.

В качестве хранилища используйте SSD

Эффективнее использовать быстрые дисковые системы для хранения файлов как системы ядра, так и storage.

Масштабируйте инфраструктуру

В обычной среде - достаточно иметь один сервер, в котором будут файлы ZENLIX, nginx, БД.

Если Вы хотите масштабировать систему например для отказоустойчивости или повышения производительности, используйте на входе:

  1. Проксирующий веб-сервер nginx - роль которого распределять запросы между APP-серверами.

  2. Несколько APP-серверов с nginx, php-fpm и laravel. В этом уровне удобно использовать тестовую среду и промышленную.

  3. REDIS-сервер, ориентированный на RAM.

  4. БД-сервер, работающий в режиме репликации.

  5. Storage-сервер - SSD дисковый носитель с Backup, хранящий файлы заявок.

Почтовый сервер

При использовании большого количества писем для рассылки, нотификации - лучше использовать сервисы, такие как Mailgun. ZENLIX позволяет использовать сторонние сервисы для почтовой нотификации.