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.
Тази страница съдържа цялата информация, необходима на разработчиците да допринесат за платформата Hotmaps или да разберат как работи.
Интегрирането на нови публични набори от данни се извършва по следния начин:
Интегриране на данни
Ако даден набор от данни не успее по време на интеграцията, в Taiga (платформа за управление на проекти) се създава проблем. Проблемът показва възникналата грешка и разработчикът трябва да я поправи и да изпрати отново работата си към Git, за да може скриптът да се опита да я интегрира отново на следващата вечер.
Изходният код на скрипта за интеграция е достъпен на тази връзка: Интегриране на данни
За да добавите набори от данни в списъка с публични набори от данни, те трябва да бъдат преместени в ново хранилище на Git в GitLab. Ето организацията GitLab, където наборите от данни трябва да бъдат изтласкани: Набори от данни на GitLab .
Веднъж на ден хранилищата се проверяват за нови комити и се интегрират, ако е така. Процесът на интеграция проверява дали данните отговарят на спецификацията или не.
Ето спецификацията: Hotmaps_Data-upload-on-Gitlab_2017-12-04_V4.pdf
Кодът на приложението се намира на GitHub под организацията Hotmaps . Тази организация притежава няколко хранилища
Ако искате да добавите някакъв код към Hotmaps, имате две възможности: ако искате да актуализирате директно интерфейса или бекенда, трябва да модифицирате хранилището за клиенти или услуги на кутията с инструменти. Ако искате да добавите свой собствен модул за изчисление, можете да създадете свое собствено хранилище, като следвате readme на хранилището base_calculation_module
Ако искате да извършите някаква работа върху хранилището на Git, моля, не работете директно с главния клон. Създайте нов клон от клона за разработка, свършете работата си с този клон и когато вашата функция бъде тествана, можете да обедините работата си с клона за разработка, както е показано на следващата графика.
Git_workflow
За да избутате нещо в някое хранилище на Hotmaps, трябва да сте член на екипа на Hotmaps, ако не сте, все още можете да изпълните разклонение на нашия инструмент, за да разработите свой собствен инструмент.
Можете да намерите повече информация за това как да работите в тези документи:
ReverseProxy_architecture_latest
Всички услуги и компоненти се използват чрез собствен Docker контейнер. Всички тези контейнери са дефинирани в един файл за съставяне на докер. Изображението по-горе представлява ИТ архитектурата на Hotmaps.
Някои партньорски организации ограничиха комуникацията само до порт 80. За да се избегнат проблемите, причинени от това ограничение, беше направено създаването на обратен прокси сървър. Този обратен прокси предлага една входна точка и след това разпределя заявката, изпратена от клиента, до съответната услуга. Обратният прокси се състои от три компонента:
Съществуват три мрежи:
Всеки модул за изчисление има свой собствен Docker контейнер.
Hotmaps използва Docker софтуер и Docker-Съставете инструмент за управление на контейнери. Файлът docker-compose.yml съдържа цялата конфигурация на архитектурата на Docker (конфигуриране на контейнери, мрежи, връзки, ...). Това позволява стартирането на контейнери с една проста команда:
docker-compose up
На уебсайта на Docker има повече за docker-compose: Създаване на препратка към командния ред и Препратка към файл за съставяне.
Има само един контейнер, който се изпълнява отделно от другите: това е базата данни, защото трябва да стои постоянно през цялото време. Ето защо го няма в конфигурационния файл на docker-compose.
За момента сървърът се хоства на HES-SO в Швейцария. Налични са 2 машини: една за разработка (разработване и тестване) и една за производство (действителната кутия с инструменти, достъпна на www.hotmaps.eu ).
И двете машини имат една и съща спецификация:
Често изпълняваме тестове за производителност на сървъра за разработка, за да гарантираме определен брой едновременни потребители.
Като пример по-долу са резултатите от първата бета версия спрямо тестовете за бъдеща версия. Новата версия включва някои подобрения в производителността.
Този пример показва тестовете за производителност на едновременни потребители, използващи същата функция: "крива на продължителност за избор на хектар". Удебеленият ред показва лимита, при който сървърът започва да създава грешки. Изборът на хектар е добър пример, тъй като показва заявките, които изискват най-много ресурси.
Бета версия на март 2019
| Nb на симулирани потребители | Средно време | Медиана | Максимално време | Минимално време | Процент грешки | | -------------------- | ------------ | ------ | -------- | -------- | -------------------- | | 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 |
Окончателна версия (август 2020 г.)
| Nb на симулирани потребители | Средно време | Медиана | Максимално време | Минимално време | Процент грешки | | -------------------- | ------------ | ------ | -------- | -------- | -------------------- | | 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 |
Даниел Хуначек, Люсиен Зубер, Матие Дейър, в Hotmaps Wiki, раздел за разработчици (септември 2020 г.)
Тази страница е написана от Daniel Hunacek, Lucien Zuber и Matthieu Dayer ( HES-SO ).
☑ Тази страница е прегледана от Мостафа Фалахнежад ( ЕЕГ - TU Wien ).
Авторско право © 2016-2020: Даниел Хуначек, Люсиен Зубер и Матие Дейър
Creative Commons Attribution 4.0 International License
Това произведение е лицензирано под Creative Commons CC BY 4.0 International License.
Идентификатор на SPDX-лиценз: CC-BY-4.0
Лиценз-текст: https://spdx.org/licenses/CC-BY-4.0.html
Бихме искали да изразим най-дълбоката си благодарност към проекта „Хоризонт 2020 “ ( Hotmaps Project) (Споразумение за безвъзмездна помощ № 723677), който осигури финансирането за извършване на настоящото разследване
This page was automatically translated. View in another language:
English (original) Czech* Danish* German* 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