我最近一直想知道的是,是否可以不费吹灰之力(编辑大量的配置文件)从Sakai Vanilla构建中“删除”核心工具?
我了解隐身工具(https://confluence.sakaiproject.org/display/DOC/Provisional+Tools),并且我“认为”有一些方法可以“禁用”工具(或者仅仅是隐身?),只是删除即可可能存在的问题并降低服务内存占用量+启动时间,如果有一种受支持的手段“完全不在服务中没有XY或Z工具”,那就太好了。
我从未尝试过仅删除jar来查看会发生什么,但是我怀疑这可能不是一个好主意,可能需要使用部署到webapp目录中的工具进行编译,我认为这意味着更改整个Maven负载文件执行“ mvn全新安装sakai:deploy”会更轻松。
Sakai架构实际上更像是许多松散的(或在某些情况下紧密结合)的工具,而不是统一的系统。从角度来看,这是一个优势,您可以在这里准确地完成您想做的事情。从统一的用户体验角度来看,这是一个缺点(尽管这不是体系结构上的限制,而是在项目早期如何运行工具团队的副作用)。
如果要删除工具(例如本例中的Samigo),则可以从TOMCAT_HOME / webapps目录中删除与之相关的war文件(和目录)。从您的tomcat主目录运行此命令:
rm -rf webapps/samigo-app*
当您启动tomcat时,该工具将不会加载,并且一切正常(假设Sakai中没有其他工具或Sakai的一部分希望有该工具存在)。出于这个原因,不应删除某些工具(例如资源(sakai-content-tool))(尽管可以隐身)。
请注意,仅删除该工具并不能为您节省很多,因为TOMCAT_HOME / components中还有与大多数工具相关的服务。该服务组件实际上是一个分解的war文件(与工具webapp基本相同),但没有接口,必须遵循一些Sakai约定才能正确加载。如果再次使用Samigo,则可以这样删除它(从tomcat的家中运行):
rm -rf components/samigo-pack
系统运行时,请勿执行此操作。您也不应从共享中删除API jar。
在删除组件后重新启动Sakai时,您将看到资源的大量减少,因为该工具服务不再加载到内存中并初始化了。通过移除Samigo及其服务,我发现启动时间减少了大约5秒(从90s减少到85s),并且使使用的JVM内存减少了25MB(从795减少到770)。
最好的选择是根据情况选择最佳解决方案,然后尝试删除工具及其服务(如果有的话),并查看是否启动时没有错误,以及您使用的工具是否按预期工作。
另外,请注意,删除工具不会删除现有课程中的工具页面。您最终将得到一个仅显示任何内容的页面(因为Sakai现在将其视为空白页面)。如果将工具重新添加到系统中,它将再次出现在页面上。
更新:如果要删除空白工具页面,则有一个简单的选择。简单的选择是只是进入站点并删除该工具所在的页面。这可以通过“网站”管理工具来完成。
或者,您可以进入数据库并删除包含特定工具ID的所有页面。尽管这样做有很大的风险,所以我不建议这样做。通常,在生产中使用这种工具之前会删除这种工具,因此希望这种情况很少见。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句