Архитектура Sakai на самом деле больше похожа на множество слабо (или в некоторых случаях сильно) связанных инструментов, чем на унифицированную систему. Это преимущество с точки зрения того, что вы можете делать именно то, что хотите здесь. Это недостаток с точки зрения унифицированного взаимодействия с пользователем (хотя это не архитектурное ограничение, а скорее побочный эффект того, как группы инструментов работали на ранних этапах проекта).
Если вы хотите удалить инструмент (например, Samigo в этом примере), вы можете просто удалить военный файл (и каталог), связанный с ним, из вашего каталога TOMCAT_HOME/webapps. Запустите это из домашнего каталога tomcat:
rm -rf webapps/samigo-app*
Когда вы запускаете tomcat, инструмент не будет загружен, и все будет работать нормально (при условии, что нет другого инструмента или части Sakai, которая ожидает, что он будет там). Некоторые инструменты, такие как ресурсы (sakai-content-tool), не должны быть удалены по этой причине (хотя их можно было бы украсть).
Обратите внимание, что только удаление инструмента не спасет вас так сильно, как вы могли бы надеяться, поскольку существует также служба, связанная с большинством инструментов, которая находится в TOMCAT_HOME/components. Компонент службы на самом деле представляет собой развернутый военный файл (в основном такой же, как веб-приложение инструмента), но он не имеет интерфейса и должен следовать некоторым соглашениям Sakai для правильной загрузки. В случае с Samigo снова вы можете удалить его так (запуская из своего дома кота):
rm -rf components/samigo-pack
Вы НЕ должны делать это во время работы системы. Вы также НЕ должны удалять банки API из общего доступа.
Когда вы перезапустите Sakai после удаления компонента, вы увидите более значительное снижение ресурсов, поскольку служба инструмента больше не загружается в память и не инициализируется. Я увидел сокращение времени запуска примерно на 5 секунд (с 90 до 85 с) и сокращение используемой памяти JVM примерно на 25 МБ (с 795 до 770) за счет удаления Samigo и его службы.
Лучше всего было бы «методом проб и ошибок» найти оптимальное решение для вашей ситуации и попробовать удалить инструмент и его службу (если она есть) и посмотреть, запускаются ли вещи без ошибок и работают ли инструменты, которые вы используете, как ожидалось.
Также обратите внимание, что удаление инструмента НЕ приведет к удалению страниц инструментов в существующих курсах. Вы получите страницу, на которой просто ничего не отображается (потому что Сакаи теперь видит ее как пустую страницу в курсе). Если вы добавите инструмент обратно в систему, он снова появится на странице.
ОБНОВЛЕНИЕ. Если вы хотите удалить пустую страницу инструментов, есть один простой способ. Самый простой вариант — просто зайти на сайт и удалить страницу, на которой находится инструмент. Это можно сделать с помощью инструмента администрирования Сайтов.
В качестве альтернативы вы можете зайти в базу данных и удалить все страницы, содержащие определенный идентификатор инструмента. Это довольно рискованно, поэтому я не рекомендую это. Как правило, удаление такого инструмента происходит до того, как он используется в производстве, поэтому, надеюсь, это редкий случай.
person
Aaron Zeckoski
schedule
19.06.2014