-
Notifications
You must be signed in to change notification settings - Fork 6
a multi docker architecture (deprecated)
NB this page is only kept for reference; the approach described here is deprecated in favour of the current architecture
See the docker-path branch
Instead of using one servlet container and therefore one JVM this repository uses one docker container for each of the two services needed: Orbeon and exist db. The third original servlet editor.war (the trunk/mermeid subdirectory) is incorporated into exist and uses XQuery and XSL to provide the same function as the original JSP based approach.
It is easier to use standard container based builds of exist db using this approach.
exist db is able to resolve XInclude directives the same way the original setup does this using JSP and standard JDK services.
The advantage of this approach is that exist provides a lot more means to edit XML using a web application.
- The network communication between containers can get quite complicated which may lead to hard to diagnose latency problems.
- JVMs are until very recently not good at giving unused RAM back to the system. It is more likely that a JVM instance will always use as much memory as is specified using
-Xmxparameter. JVMs until JDK 11 are therefore not suited very well for containerized environments where many containers compete for main memory.