Symptome
Der RMI-Zugriff auf das CRX-Repository wurde durch Setzen von rmi-Port auf 1234 in crx-author/web.xml aktiviert. Die Antwortzeit ist extrem lang; es dauert 74 Sekunden, bis JNDI das JCR RemoteRepository findet.
Ursache
Der in der Serverkonfiguration angegebene RMI-Port ist nur der Port der RMI-Registry, auf dem die Remote-Referenz gespeichert ist. Der aktuelle RMI-Service verwendet einen anderen Anschluss, der zurzeit nicht konfigurierbar ist; er wird nach dem Zufallsprinzip vom Betriebssystem ausgewählt.
Es ist jedoch auch möglich, über HTTP-Anforderungen auf den eigentlichen RMI-Service zuzugreifen, um den RMI-Port zu konfigurieren. Dies ist das Standard-Fallback, das Java verwendet, wenn auf den realen Service-Port nicht zugegriffen werden kann. Eine solche schwache Leistung kann auftreten, wenn das HTTP-Fallback verwendet wird.
Lösung
Es gibt keine alternative Fernzugriffsschicht und es scheint, dass der HTTP-Tunnel-Workaround nicht schnell genug ist. Die einzig sinnvolle Alternative wäre also, die Fähigkeit des Betriebssystems zu nutzen, den Bereich der dynamischen Ports einzustellen, den das Betriebssystem dem RMI-Dienst zuweisen kann. Unter Linux wird dies durch Änderung des Inhalts von /proc/sys/net/ipv4/ip_local_port_range erreicht. Das sollte ermöglichen, mit dem nativen RMI-Protokoll effizienter auf das Repository zuzugreifen.
Gilt für
CRX
Bei Ihrem Konto anmelden