Frage

Für eine Regierungsbehörde, bauen wir eine Release-Management-System entwickelt in PHP und Oracle. Die Daten für diese Anwendung werden in Datenbanktabellen gespeichert und mit PL / SQL-Paketen und Verfahren verarbeitet werden.

Der Release Management Prozess wird auf Metadaten ausführlich anhand von Subversion-Repositorys kommen. Wir greifen auf die Repositories von PL / SQL über den internen Oracle JVM svn Befehle auf dem Unix-Server, auf dem residiert die Oracle-Instanzen auszuführen. Die Ergebnisse aus dem SVN-Befehle werden in XML und analysiert vor der von PL / SQL verarbeitet beeing. Zugriff auf Subversion ist auf diese Weise nicht sehr performant für häufig wiederholte Verwendung.

Derzeit, was wir tun, ist die Subversion-Metadaten in Datenbanktabellen bei jeder Speicherung in der Subversion-Repositorys commit (über Subversion Haken). Wir extrahieren die Protokollinformationen für jede Subversion-Transaktion und halten Sie es in einigen Oracle-Tabellen. Wir sind dann in der Lage Subversion-Metadaten mit normalen SQL-Abfragen zu erhalten.

Gibt es bessere Möglichkeiten, um Subversion von PL / SQL zugreifen?

War es hilfreich?

Lösung

Wenn Ihr mit Java JVM von Oracle, könnten Sie versuchen, SVNKit mit dem SVN-Server von Java nativ zu kommunizieren statt auf das Betriebssystem von Beschuss aus Befehle auszuführen.

Andere Tipps

Ich denke, die Grundströmung Sinn macht. Ich würde tun Experimente empfehlen, um zu sehen, wo genau die Performance-Engpässe und dann nehmen, wenn von dort. Zum Beispiel kreuzt es von PL / SQL Oracle JVM? Ist es JVM Beschuss aus dem SVN-Befehl auszuführen? Ist es die SVN-Rundfahrt? Ist es das Parsen von XML?

Lassen Sie uns zum Beispiel sagen, es ist die SVN-Rundfahrt. Vielleicht könnten Sie einen Prozess auf der Oracle-Maschine haben, die Antworten aus dem SVN-Server-Caches, so dass die Hin- und Rückfahrt zu Zeiten vermieden werden könnte? Vielleicht könnte die SVN Rundfahrt sein async?

Aber, wie ich schon sagte, müssen Sie wissen, wo der Engpass ist.

Ich suche auch für eine API Subversion und Oracle integerate. Ich muss in der Lage, Oracle PL / SQL-Objekte (Prozeduren, Pakete) in Subversion und dann zu ziehen, sobald Änderungen an Objekten gemacht werden, sollten sie auf die Objekte in der Oracle-Datenbank angewendet werden.

Eine weitere Lösung ist eine Software zu verwenden, die zwischen ORACLE und SVN bleibt und synchronisiert PL / SQL mit Quellen.

Dies ist eines dieser Programme, die von cron gestartet werden kann: https://sourceforge.net/projects/dbcode-svn-sync/ .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top