Подразбавлю восторги. Довольно монструозная штукенция, в которой очень и очень много (не)нужного. Включенная по дефолту возможность шарить файлы с другими узлами некстклауда? Эта фича кстати отстукивается на внешний сервер в джобе, даже если сервер не в федерации. Синхронизация ежедневника? Это натурально звездолет! Предполагается использование как платформы groupware, а не как примитивной файлопомойки (для этого он избыточен и жруч). Разработка широко используется в правительственных и военных кругах США, судя по утекшим скриншотам некоторых систем...Код достаточно архаичный. В нем сосуществует подход OwnCloud (строится абстракция View и дальше по путям в ней рулится) и новый, где уже есть что-то типа inode (и можно монтировать один и тот же файл в разные места), вроде бы на замену, но на практике приходится использовать оба одновременно. Если нужна тупо файлопомойка на небольшое количество юзеров с доступом по распространенному протоколу и возможностью кому-нибудь иногда ссылочку дать на скачивание - minio будет достаточно, с куда меньшей ресурсоемкостью и гемором в обслуживании. Напоминаю, Nextcloud файлы в веб-интерфейсе отдает на скачивание пхп-скриптом. На каждый файл рантайм висит в памяти, неведомо сколько тратится на перекладывание в сокет. Код содержит такую вложенность абстракций, что хдебаг с настройками по дефолту тупо ждет вечно. Памяти под кэш разнообразных свойств файлов (чтобы не цеплять абстракции из БД каждый раз ради одного свойства) нужно много! В истории про нормальную работу на разбери-пи не верится - просто обязано лагать при более чем 1-2 рпс. Разобраться в коде реально, но не для средних умов, однозначно. Новые аппы писать достаточно просто, хотя не без приколов. Проблемы начинаются, когда вам надо в каком-нибудь из поставляемых аппов что-то добавить/переработать. Увлекательное сопровождение форка или уродливая химера, модифицирующая логику работы родного аппа (или нескольких!) - выбор за тобой. Высрался полегчало.
|