В этой статье мы узнаем о настройке производительности сервера Nextcloud с помощью кэша памяти и необходимой оптимизации программного обеспечения. Для повышения производительности эти настройки должны быть реализованы при каждой установке Nextcloud.
Nextcloud можно использовать на компьютере с одноядерным процессором и 1 ГБ оперативной памяти, но это зависит от количества пользователей. В этой статье мы узнаем о настройке Nextcloud для повышения производительности с использованием кэширования. Для этого мы будем использовать сервер Redis и OPcache PHP.
Используя приведенную ниже оптимизацию, вы можете заметить улучшения в основном в веб-интерфейсе Nextcloud. Настройка Nextcloud с использованием кэша поможет вам повысить производительность веб-интерфейса и снизить нагрузку на сервер, вызванную процессами веб-сервера.
Настройка производительности Nextcloud
На самом первом этапе вам нужен работающий экземпляр сервера Nextcloud. Если у вас его еще нет, вы можете получить его, следуя этим статьям:
- Установите сервер NextCloud на Centos 9 Stream
Обновите Nginx и PHP до последних версий
Команда Nextcloud предлагает Apache для лучшей совместимости. Nextcloud является преемником Owncloud и Owncloud в основном разработан для веб-сервера Apache. Но теперь Nextcloud также документировал конфигурацию веб-сервера Nginx с помощью PHP-FPM. Так что теперь мы можем легко настроить Nextcloud с помощью Nginx Server.
Для версии Nextcloud 27 рекомендуется использовать PHP 8.2 иначе могут возникнуть проблемы с производительностью.
Включить PHP OPcache
PHP OPcache — это один из кешей памяти, поддерживаемых Nextcloud. Он повышает производительность PHP-приложений за счет кэширования предварительно скомпилированного байт-кода. Для повышения производительности обязательно для включения.
Вы можете включить его, добавив приведенные ниже строки в свой файл opcache.ini из 10 файлов, который находится в вашем каталоге /etc /php. (Например, если у вас установлен PHP 8.2, то вы найдете файл в
/etc/php.d/10-opcache.ini)
1 2 3 4 5 6 7 |
opcache.enable=1 opcache.enable_cli=1 opcache.interned_strings_buffer=8 opcache.max_accelerated_files=10000 opcache.memory_consumption=128 opcache.save_comments=1 opcache.revalidate_freq=1 |
Настройка PHP-FPM
Вы можете столкнуться с медленной загрузкой веб-интерфейса на сервере Nextcloud, если используете PHP-FPM. Однако для решения этой проблемы следует разрешить запуск большего количества процессов даже при небольшой установке. Приведенная ниже конфигурация предусмотрена для экземпляра с 4 ГБ оперативной памяти и 1 ГБ кэша MySQL. Добавьте приведенный ниже код в свой www.conf файл, который находится в каталоге /etc/php-fpm.d/
1 2 3 4 5 |
pm = dynamic pm.max_children = 120 pm.start_servers = 12 pm.min_spare_servers = 6 pm.max_spare_servers = 18 |
Включить Redis для кэша памяти
Nextcloud поддерживает как локальный кэш, так и кэш с блокировкой файлов. Redis — это база данных ключ-значение в памяти, которая может использоваться для повышения производительности PHP-приложений, таких как Nextcloud.
Здесь мы используем Redis как для локального кэширования, так и для блокировки файлов. Во-первых, мы должны установить сервер Redis с помощью приведенной ниже команды.
1 |
dnf install redis php-pecl-redis -y |
После установки запустите и включите сервер Redist с помощью приведенной ниже команды.
1 2 |
systemctl start redis systemctl enable redis |
После этого добавьте приведенные ниже строки внизу в свой config.php файл, который находится в /var/www/nextcloud/config/config.php
1 2 3 4 5 6 7 8 |
'memcache.local' => '\\OC\\Memcache\\Redis', 'memcache.distributed' => '\\OC\\Memcache\\Redis', 'memcache.locking' => '\\OC\\Memcache\\Redis', 'redis' => array ( 'host' => 'localhost', 'port' => 6379, ), |
Сохраните файл и перезапустите веб-сервер с помощью приведенной ниже команды.
Для веб-сервера NGINX и PHP-FPM
1 |
systemctl restart nginx php-fpm |
В результате теперь вы успешно настроили кэш сервера Redis для сервера Nextcloud. В заключение, для повышения производительности сервера Nextcloud эти простые настройки рекомендуются для каждого экземпляра.
Заключение:
В этой статье мы узнали, как настроить и оптимизировать сервер Nextcloud с помощью кэша памяти и некоторых обновлений программного обеспечения. Однако вы можете поделиться своим мнением в разделе комментариев.