| Warnung: Dieses Repository wurde zugunsten von https://github.com/cusbg/prankweb veraltet! Bitte stellen Sie dort alle Probleme ein! |
|---|
Diese Reporitärin enthält die Priankweb -Webanwendung. In dieser Datei erklären wir, wie man den Priankweb -Server einstellt und die Priankweb -REST -API beschreiben.
Vielen Dank an Autoren von P2Rank, Litemol, Protael, Wildfly und vielen anderen Bibliotheken und Tools, die wir in diesem Projekt verwenden
Installieren Sie Node.js und Gradle (Sie benötigen auch Java).
Klonen Sie dieses Repository einschließlich aller Submodules:
git clone --recursive https://github.com/jendelel/PrankWebApp.gitJetzt erstellen Sie Priankweb mit diesem Befehl:
./gradlew clean warDadurch werden alle Submodules kompiliert und root.war -Datei im Verzeichnis build/libs erstellt.
Um den Priankweb -Server auszuführen, müssen Sie JBoss Wildfly Application Server von http://wildfly.org/downloads/ und Setup -Umweltvariable JBOSS_HOME auf Wildfly -Pfad herunterladen und auspacken.
Priankweb benötigt Wege zu Verzeichnissen, in denen hochgeladene Dateien usw. PrankData werden sollen Dieses Verzeichnis enthält prankweb.properties -Datei, die alle erforderlichen Pfade und Konfigurationen enthält. Die Datei enthält Paare (Schlüssel und Wert). Sie müssen die folgenden Eigenschaften einrichten:
Sie können auch angeben:
Wir empfehlen, alle Daten im PrankData -Verzeichnis zu speichern. Erstellen Sie einen symbolischen Link in JBOSS_HOME/Standalone/Data/Priankweb, der auf das Verzeichnis von PriankData zeigt, indem Sie folgende Befehle verzeichnen:
Fenster:
cd /d %JBOSS_HOME% s tandalone d ata
mklink /D PrankWeb {path to PrankData directory}Linux:
cd $JBOSS_HOME /standalone/data
ln -s -d {path to PrankData directory} PrankWeb Da der Server die P2Rank intern ausführt, erhöhen Sie bitte das Speicherlimit in $JBOSS_HOME/bin/standalone.conf unter Linux oder %JBOSS_HOME%/bin/standalone.conf.bat unter Windows, um die Limit zu ändern, um die Option -xmx in java_opts zu mindestens 1024M zu ändern.
JAVA_OPTS= " -Xms64m -Xmx1024m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true " Um die Gzip -Komprimierung des Webservers zu aktivieren, fügen Sie diese beiden folgenden Zeilen hinzu , die mit zwei Asteren zur $JBOSS_HOME/standalone/configuration/standalone.xml -Datei gekennzeichnet sind:
...
< subsystem xmlns = " urn:jboss:domain:undertow:3.1 " >
< buffer-cache name = " default " />
< server name = " default-server " >
< http-listener name = " default " socket-binding = " http " redirect-socket = " https " enable-http2 = " true " />
< https-listener name = " https " socket-binding = " https " security-realm = " ApplicationRealm " enable-http2 = " true " />
< host name = " default-host " alias = " localhost " >
< location name = " / " handler = " welcome-content " />
< filter-ref name = " server-header " />
< filter-ref name = " x-powered-by-header " />
**< filter-ref name = " gzipFilter " predicate = " regex[pattern='(?:application/javascript|text/css|text/html|text/plain)(;.*)?', value=%{o,Content-Type}, full-match=true] " />**
</ host >
</ server >
< servlet-container name = " default " >
< jsp-config />
< websockets />
</ servlet-container >
< handlers >
< file name = " welcome-content " path = " ${jboss.home.dir}/welcome-content " />
</ handlers >
< filters >
< response-header name = " server-header " header-name = " Server " header-value = " WildFly/10 " />
< response-header name = " x-powered-by-header " header-name = " X-Powered-By " header-value = " Undertow/1 " />
**< gzip name = " gzipFilter " />**
</ filters >
</ subsystem >
... Nachdem Sie JBoss WildFly eingerichtet haben, führen Sie einfach JBOSS_HOME/bin/standalone{.sh|.bat} aus und kopieren Sie die ROOT.war -Datei End JBOSS_HOME/standalone/deployments oder führen Sie den Befehl gradle deploy aus, starten Sie das Projektverzeichnis.
Um den Server auf Port 80 ohne Super-Benutzer-Rechte auszuführen
BRIFLY: Führen Sie diesen Befehlsende Reroute -Port 8080 Ende 80 aus: sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
Die URIs (einheitliche Ressourcenkennungen) folgen Muster / API / origin / type / id , wobei origin entweder upload oder id ist, in dem identifiziert wird, ob die ursprüngliche PDB -Datei vom Benutzer hochgeladen oder von der Data Bank heruntergeladen wurde. Der type zeigt den vom Benutzer angeforderten Dateityp an. Zuletzt ist id entweder PDB -Identifikationscode oder Identifikationszeichenfolge, die vom Server generiert wurde, nachdem eine benutzerdefinierte PDB -Datei hochgeladen wurde. Wir bedienen alle folgenden Daten für jedes hochgeladene Protein oder Protein der Proteindatenbank (PDB) über GET -Methode - der Typ ist in Klammern angegeben:
pdb ) - Originaldatei, die das von einem Benutzer oder aus der Datenbank empfangene Protein beschreibtmsa ) - Multiple Sequenzausrichtung (MSA) für jede Kette des Proteins.hom ) - Konservierungswerte, die aus jeder MSA -Datei berechnet wurden.csv ) - Die von P2Rank generierte JSON -Datei (JavaScript -Objekt Notation), die die Vorhersageergebnisse enthält.seq ) - JSON -Datei mit der Proteinsequenz und ihren Erhaltungswerten.vis ) - P2Rank erzeugt auch ein Pymol -Skript für die Offline -Visualisierung.all ) - Eine ZIP -Datei, die alle oben aufgeführten Dateien enthält. Die benutzerdefinierte Proteindatei kann auch zur Analyse durch Postanfrage eingereicht werden. Der URI ist: /analyze/file_upload . Die Anforderung sollte die PDB -Datei mit Identifikator PDBFile, Boolean DoconServierung, codieren, die angibt, ob die Erhaltungswerte berechnet werden sollten. Optional können PDBID- oder MSA -Dateien, die mit .Fasta enden, aufgenommen werden, um die Analyse zu beschleunigen. Die Antwort vom Server enthält den generierten Identifikationscode, der für weitere GET -Anforderungen verwendet werden kann.