Disclaimer: The explanation provided on this website (Hotmaps Wiki) are indicative and for research purposes only. No responsibility is taken for the accuracy of the provided information, explanations and figures or for using them for unintended purposes.
Data privacy: By clicking OK below, you accept that this website may use cookies.
Diese Seite enthält alle Informationen, die Entwickler benötigen, um zur Hotmaps-Plattform beizutragen oder um zu verstehen, wie sie funktioniert.
Die Integration neuer öffentlicher Datensätze erfolgt wie folgt:
Datenintegration
Wenn ein Datensatz während der Integration fehlschlägt, wird auf Taiga (Projektmanagementplattform) ein Problem erstellt. Das Problem zeigt den Fehler an und der Entwickler sollte ihn beheben und seine Arbeit erneut an Git senden, damit das Skript versuchen kann, ihn am nächsten Abend erneut zu integrieren.
Der Quellcode des Integrationsskripts ist unter folgendem Link verfügbar: Datenintegration
Um Datensätze zur Liste der öffentlichen Datensätze hinzuzufügen, müssen sie in ein neues Git-Repository in GitLab verschoben werden. Hier ist die GitLab-Organisation, in die Datensätze übertragen werden sollen: Datensätze in GitLab .
Einmal am Tag werden die Repositorys auf neue Commits überprüft und gegebenenfalls integriert. Der Integrationsprozess prüft, ob die Daten der Spezifikation entsprechen oder nicht.
Hier ist die Spezifikation: Hotmaps_Data-upload-on-Gitlab_2017-12-04_V4.pdf
Der Code der Anwendung befindet sich auf GitHub unter der Hotmaps-Organisation . Diese Organisation besitzt mehrere Repositorys
Wenn Sie Hotmaps Code hinzufügen möchten, haben Sie zwei Möglichkeiten: Wenn Sie die Benutzeroberfläche oder das Backend direkt aktualisieren möchten, müssen Sie das Client- oder Service-Repository der Toolbox ändern. Wenn Sie Ihr eigenes Berechnungsmodul hinzufügen möchten, können Sie Ihr eigenes Repository erstellen, indem Sie der Readme-Datei des Repositorys base_calculation_module folgen
Wenn Sie Arbeiten am Git-Repository ausführen möchten, arbeiten Sie bitte nicht direkt mit dem Hauptzweig. Erstellen Sie einen neuen Zweig aus dem Entwicklungszweig, arbeiten Sie an diesem Zweig. Wenn Ihre Funktion getestet wurde, können Sie Ihre Arbeit mit dem Entwicklungszweig zusammenführen, wie in der folgenden Grafik dargestellt.
Git_workflow
Um etwas in ein Hotmaps-Repository zu verschieben, müssen Sie Mitglied des Hotmaps-Teams sein. Wenn dies nicht der Fall ist, können Sie dennoch einen Teil unseres Tools ausführen, um Ihr eigenes Tool zu entwickeln.
Weitere Informationen zur Arbeitsweise finden Sie in diesen Dokumenten:
ReverseProxy_architecture_latest
Alle Dienste und Komponenten werden über einen eigenen Docker-Container verwendet. Alle diese Container werden in einer einzigen Docker-Compose-Datei definiert. Das obige Bild zeigt die IT-Architektur von Hotmaps.
Einige Partnerorganisationen beschränkten die Kommunikation nur auf Port 80. Um die durch diese Einschränkung verursachten Probleme zu vermeiden, wurde ein Reverse-Proxy erstellt. Dieser Reverse-Proxy bietet einen einzigen Einstiegspunkt und verteilt dann die vom Kunden gesendete Anfrage an den betreffenden Dienst. Der Reverse Proxy besteht aus drei Komponenten:
Es gibt drei Netzwerke:
Jedes Berechnungsmodul verfügt über einen eigenen Docker-Container.
Hotmaps verwendet die Docker- Software und das Docker-Compose- Tool zum Verwalten von Containern. Eine docker-compose.yml-Datei enthält die gesamte Konfiguration der Docker-Architektur (Konfiguration von Containern, Netzwerken, Links, ...). Dies ermöglicht die Ausführung von Containern mit einem einfachen Befehl:
docker-compose up
Weitere Informationen zu Docker-Compose finden Sie auf der Website von Docker: Compose-Befehlszeilenreferenz und Compose-Dateireferenz .
Es gibt nur einen Container, der getrennt von anderen ausgeführt wird: Es handelt sich um die Datenbank, da sie ständig aktiv bleiben muss. Aus diesem Grund befindet es sich nicht in der Docker-Compose-Konfigurationsdatei.
Derzeit wird der Server auf der HES-SO in der Schweiz gehostet. Es stehen 2 Maschinen zur Verfügung: eine für die Entwicklung (Entwicklung und Test) und eine für die Produktion (die eigentliche Toolbox, verfügbar unter www.hotmaps.eu ).
Beide Maschinen haben die gleiche Spezifikation:
Wir führen häufig Leistungstests auf dem Entwicklungsserver durch, um eine bestimmte Anzahl gleichzeitiger Benutzer zu gewährleisten.
Im Folgenden finden Sie als Beispiel die Ergebnisse der ersten Beta-Version im Vergleich zu zukünftigen Release-Tests. Die neue Version enthält einige Leistungsverbesserungen.
Dieses Beispiel zeigt die Leistungstests von gleichzeitigen Benutzern mit derselben Funktion: "Dauer-Kurve für die Hektarauswahl". Die fette Linie zeigt die Grenze, an der der Server Fehler auslöst. Die Hektarauswahl ist ein gutes Beispiel, da sie die Abfragen zeigt, die die meisten Ressourcen erfordern.
Beta-Version vom März 2019
| Anzahl simulierter Benutzer Durchschnittliche Zeit | Median | Maximale Zeit | Min. Zeit | Prozentsatz der Fehler | --------------------- | ------------ | ------ | -------- | -------- | -------------------- | | 1 | 1042 | 1042 | 1042 | 1042 | 0 | | 20 | 3608 | 3858 | 4475 | 2156 | 0 | | 50 | 7337 | 7595 | 11791 | 1568 | 0 | | 100 | 13897 | 13644 | 24492 | 1875 | 0 | | 200 | 27135 | 26380 | 51967 | 3045 | 0 | | 300 | 41237 | 43083 | 73245 | 3223 | 10,67 |
Endgültige Veröffentlichung (August 2020)
| Anzahl simulierter Benutzer Durchschnittliche Zeit | Median | Maximale Zeit | Min. Zeit | Prozentsatz der Fehler | --------------------- | ------------ | ------ | -------- | -------- | -------------------- | | 1 | 1025 | 970 | 1151 | 956 | 0 | | 20 | 1671 | 1732 | 2085 | 1113 | 0 | | 50 | 3527 | 3622 | 5593 | 982 | 0 | | 100 | 6648 | 6764 | 11854 | 1118 | 0 | | 200 | 12904 | 12801 | 24163 | 1192 | 0 | | 300 | 19521 | 19382 | 38116 | 1060 | 0 |
Daniel Hunacek, Lucien Zuber, Matthieu Dayer, im Hotmaps-Wiki, Entwicklerbereich (September 2020)
Diese Seite wurde von Daniel Hunacek, Lucien Zuber und Matthieu Dayer ( HES-SO ) geschrieben.
☑ Diese Seite wurde von Mostafa Fallahnejad ( EEG - TU Wien ) überprüft.
Copyright © 2016-2020: Daniel Hunacek, Lucien Zuber und Matthieu Dayer
Creative Commons Namensnennung 4.0 Internationale Lizenz
Diese Arbeit unterliegt den Bestimmungen einer Creative Commons CC BY 4.0 International License.
SPDX-Lizenz-ID: CC-BY-4.0
Lizenztext: https://spdx.org/licenses/CC-BY-4.0.html
Wir möchten dem Horizon 2020 Hotmaps-Projekt (Finanzhilfevereinbarung Nr. 723677), das die Mittel für die Durchführung der vorliegenden Untersuchung bereitstellte , unsere tiefste Anerkennung aussprechen
This page was automatically translated. View in another language:
English (original) Bulgarian* Czech* Danish* Greek* Spanish* Estonian* Finnish* French* Irish* Croatian* Hungarian* Italian* Lithuanian* Latvian* Maltese* Dutch* Polish* Portuguese (Portugal, Brazil)* Romanian* Slovak* Slovenian* Swedish*
* machine translated
Last edited by web, 2020-09-30 11:29:36