Sisällysluettelo

esittely

Tämä sivu sisältää kaikki tiedot, joita kehittäjät tarvitsevat osallistuakseen Hotmaps-alustaan tai ymmärtääkseen sen toimintaa.

To Top

Tietojoukkojen integrointi

Uusien julkisten tietoaineistojen integrointi tapahtuu seuraavasti:

  1. tietojoukot on työnnettävä git-arkistoon ( Lisää tietojoukot GitLabiin )
  2. joka ilta komentosarja integroi uudet / päivitetyt tietojoukot DEV-alustaan
  3. Jos kaikki toimi hyvin, tietojoukko on nyt saatavana DEV-alustalla ja kehittäjät voivat integroida sen koodiinsa
  4. Kun koodaus on valmis, uudet ominaisuudet lisätään tuotantoalustaan uuden julkaisun kautta

tietojen integrointi

Jos tietojoukko epäonnistuu integraation aikana, ongelma luodaan Taigalle (projektinhallintaympäristö). Aihe osoittaa esiintyneen virheen, ja kehittäjän tulisi korjata se ja siirtää työnsä uudelleen Gitille, jotta käsikirjoitus voi yrittää integroida sen uudelleen seuraavana iltana.

Integrointikoodin lähdekoodi on saatavana tällä linkillä: Tietojen integrointi

To Top

Lisää tietojoukot GitLabiin

Jos haluat lisätä tietojoukkoja julkisten tietoaineistojen luetteloon, ne on siirrettävä uuteen Git-arkistoon GitLabissa. Tässä on GitLab-organisaatio, johon tietojoukot tulisi siirtää: GitLabin tietoaineistot .

Kerran päivässä arkistot tarkistetaan uusien sitoumusten löytämiseksi ja integroidaan, jos on. Integrointiprosessi tarkistaa, onko data eritelmän mukainen vai ei.

Tässä on erittely: Hotmaps_Data-upload-on-Gitlab_2017-12-04_V4.pdf

To Top

Luettelo päävarastoista

Sovelluksen koodi sijaitsee GitHubissa Hotmaps-organisaation alla . Tämä organisaatio omistaa useita arkistoja

To Top

Kuinka lisätä koodi

Jos haluat lisätä koodin Hotmaps-tiedostoihin, sinulla on kaksi mahdollisuutta: jos haluat päivittää käyttöliittymän tai taustan suoraan, sinun on muokattava työkalupakin asiakas- tai palveluvarastoa. Jos haluat lisätä oman laskentamoduulin, voit luoda oman arkistosi seuraamalla base_calculation_module-arkiston readmea

Jos haluat suorittaa joitain töitä Git-arkistossa, älä työskentele suoraan päähaaran kanssa. Luo uusi haara kehityshaarasta, tee työtä tällä haaralla ja kun ominaisuus on testattu, voit yhdistää työsi kehityshaaraan seuraavan kaavion osoittamalla tavalla.

git_workflow

Jotta työntää jotain Hotmaps-arkistoon, sinun on oltava Hotmaps-tiimin jäsen, jos et ole, voit silti suorittaa työkalumme haarukan kehittääksesi oman työkalusi.

Löydät lisätietoja työskentelystä näistä asiakirjoista:

To Top

Kuvaus IT-infrastruktuurista

ReverseProxy_architecture_latest

Kaikkia palveluita ja komponentteja käytetään oman Docker-säilön kautta. Kaikki nämä säilöt on määritetty yhdeksi telakointilaitteiden tiedostoksi. Yllä oleva kuva edustaa Hotmapsin IT-arkkitehtuuria.

Jotkut kumppaniorganisaatiot rajoittivat viestintää vain porttiin 80. Tämän rajoituksen aiheuttamien ongelmien välttämiseksi tehtiin käänteinen välityspalvelin. Tämä käänteinen välityspalvelin tarjoaa yhden tulopisteen ja jakaa sitten asiakkaan lähettämän pyynnön kyseiselle palvelulle. Käänteinen välityspalvelin koostuu kolmesta komponentista:

  1. Käänteinen välityspalvelin: se toimii ainutlaatuisena lähtökohtana ja jakaa pyynnöt oikeille palveluille.
  2. Proxy-gen: se on palvelu, joka kartoittaa automaattisesti kaikki palvelut käänteisessä välityspalvelimessa. Siksi ei ole tarpeen lisätä uutta palvelua manuaalisesti välityspalvelimen kokoonpanoon
  3. lets-encrypt: se on palvelu, joka sallii SSL-protokollan käytön. Se on välttämätön https-protokollan aktivoimiseksi. SSL-varmenteet allekirjoitetaan sähköpostiosoitteella, joka on määritetty tähän palveluun.

Kolme verkostoa on olemassa:

  • hotmaps_nginx sallii käänteisen välityspalvelimen olla yhteydessä apin, käyttöliittymän ja geopalvelimen kanssa. Se antaa pääasiassa jakaa pyynnön oikealle palvelulle kolmen kesken.
  • hotmaps_backend mahdollistaa yhteyden taustan kaikkien komponenttien välillä: api, frontend, geoserver ja PostgreSQL-tietokanta.
  • hotmaps_cm-net mahdollistaa viestinnän kunkin laskentamoduulin ja apin välillä.

Jokaisella laskentamoduulilla on oma Docker-säilö.

Suorita Dockerin kanssa

Hotmaps käyttää Docker- ohjelmistoa ja Docker-Compose -työkalua konttien hallintaan. Docker-compose.yml-tiedosto sisältää koko Docker-arkkitehtuurin kokoonpanon (säiliöiden, verkkojen, linkkien kokoonpanot). Tämä mahdollistaa konttien ajamisen yhdellä yksinkertaisella komennolla:

 docker-compose up 

Docker-compose on enemmän Dockerin verkkosivustossa: Comput-komentoriviviittaus ja Compose file reference .

On vain yksi säilö, jota käytetään erikseen muista: se on tietokanta, koska sen on pysyttävä koko ajan. Siksi sitä ei ole docker-compose -määritystiedostossa.

Palvelininfrastruktuuri

infrastruktuuri

Toistaiseksi palvelinta ylläpidetään HES-SO: ssa Sveitsissä. Saatavana on 2 konetta: yksi kehitykseen (kehittäminen ja testaaminen) ja toinen tuotantoon (varsinainen työkalupakki, saatavana osoitteesta www.hotmaps.eu ).

Molemmilla koneilla on sama määritelmä:

  • Suoritin: Intel Xeon E5-2680 v4 (8) @ 2,4 GHz)
  • RAM: 16 Gt
  • Kiintolevy: 500 Gt
  • Käyttöjärjestelmä: Ubutnu 16.04 LTS

Esitys

Suoritamme usein suoritustestejä kehityspalvelimella tietyn määrän samanaikaisten käyttäjien takaamiseksi.

Alla on esimerkkejä ensimmäisen beetaversion tuloksista verrattuna tulevaisuuden julkaisutestiihin. Uusi julkaisu sisältää joitain suorituskyvyn parannuksia.

Tämä esimerkki näyttää samanaikaisten käyttäjien suoritustasot, jotka käyttävät samaa toimintoa: "hehtaarivalinnan kestokäyrä". Lihavoitu viiva näyttää rajan, jossa palvelin alkaa lisätä virheitä. Hehtaarivalinta on hyvä esimerkki, koska se näyttää eniten resursseja vaativat kyselyt.

Beetajulkaisu maaliskuuta 2019

| Simuloitujen käyttäjien Nb Keskimääräinen aika | Mediaani | Enimmäisaika | Min aika | Prosenttiosuus virheistä | --------------------- | ------------ | ------ | -------- | -------- | -------------------- | | 1 | 2936 | 2936 | 2936 | 2936 | 0 | | 20 | 9329 | 9503 | 11778 | 6901 | 0 | | 50 | 22922 | 22713 | 33401 | 8661 | 0 | | 100 | 33302 | 32875 | 58257 | 4929 | 16 | | 200 | ei | ei | ei | ei | ei | | 300 | ei | ei | ei | ei | ei |

Tuleva julkaisu DEV: llä (maaliskuu 2019)

| Simuloitujen käyttäjien Nb Keskimääräinen aika | Mediaani | Enimmäisaika | Min aika | Prosenttiosuus virheistä | --------------------- | ------------ | ------ | -------- | -------- | -------------------- | | 1 | 1802 | 1802 | 1802 | 1802 | 0 | | 20 | 5289 | 2677 | 6873 | 2149 | 0 | | 50 | 10775 | 11274 | 17081 | 2577 | 0 | | 100 | 19807 | 20280 | 35142 | 3156 | 0 | | 200 | 37302 | 37575 | 69930 | 3381 | 0 | | 300 | 49091 | 57536 | 83578 | 2447 | 26 |

To Top

Kuinka määritellä indikaattorit

Indikaattorin määritelmä

To Top

Viitteet

To Top

Kuinka lainata

To Top

Tekijät ja arvioijat

Tekijät:

  • Daniel Hunacek
  • Lucien Zuber
  • Matthieu Dayer

arvioijat:

To Top

tunnustus

Haluamme ilmaista syvimmän arvion Horizon 2020 Hotmaps -hankkeelle (avustussopimus nro 723677), joka rahoitti tämän tutkimuksen toteuttamista

To Top

This page was automatically translated. View in another language:

English (original) Bulgarian* Croatian* Czech* Danish* Dutch* Estonian* French* German* Greek* Hungarian* Irish* Italian* Latvian* Lithuanian* Maltese* Polish* Portuguese (Portugal, Brazil)* Romanian* Slovak* Slovenian* Spanish* Swedish*

*: machine translated