Przedmiotem badań była analiza porównawcza trzech szkieletów do budowy aplikacji internetowych działających w ekosystemie Node.js: Express (wersja 4.17.1), Hapi (wersja 20.0.1) oraz Koa (wersja 2.13.0). Przygotowano ekspe-ryment składający się z szeregu scenariuszy, podczas których dokonano pomiarów czasów odpowiedzi serwera na żądania przychodzące ze strony klienta. W ramach pracy zaimplementowano serwerowe aplikacje testowe obsługujące żądania HTTP (GET, POST, PUT, DELETE) realizujące typowe operacje na bazie danych. Aplikacje zawierały te same funkcjonalności i zostały zbudowane przy pomocy trzech testowanych szkieletów. W poszczególnych scenariuszach wysyłano od niezależnych klientów po 1000 żądań danego typu, dokonywano pomiarów czasów kolejnych odpowiedzi oraz obliczano ich średnie. Na podstawie uzyskanych wyników okazało się, że szkielety Hapi i Koa dla żądań typu GET, POST, PUT, DELETE, operujące na jednym obiekcie lub ciągu znaków Hello World! osiągnęły najlepsze, choć bardzo zbliżone czasy odpowiedzi. W przypadku żądania GET, przy większych obciążeniach zdecydowanie najlepszym okazał się szkielet Koa, uzyskując czasy odpowiedzi w przybliżeniu o 20% lepsze niż Express. Przy dużych obciążeniach zdecydowanie najgorzej wypadł szkielet Hapi osiągający ponad 2 razy dłuższe czasy odpowiedzi niż szkielet Koa.
EN
The subject of the research was the comparative analysis of three frameworks for building web applications, i.e. Ex-press (version 4.17.1), Hapi (version 20.0.1) and Koa (version 2.13.0), operating in the Node.js ecosystem. An experi-ment was prepared consisting of a number of scenarios, during which the server response times to incoming requests from the client were measured. As part of the work, server test applications handling HTTP requests (GET, POST, PUT, DELETE) performing typical data operations were implemented. The applications contained the same functionalities and were built using the three tested frameworks. In individual scenarios, 1,000 requests of a given type were sent from independent clients, the times of successive responses were measured and their averages were calculated. On the basis of the obtained results, Hapi and Koa frameworks for GET, POST, PUT, DELETE requests, operating on one object or a string Hello World! have achieved the best, although very similar, response times. In the case of the GET request, the Koa framework proved to be the best for higher loads, achieving response times approximately 20% better than the Express framework. For high loads, the Hapi framework achieved the worst results, reaching response times over 2 times longer than the Koa framework.
W artykule opisano projekt i implementację prostego systemu wspomagającego kontrolowanie położenia i zarządzanie zamówieniami samochodowej floty handlowej. W odróżnieniu do drogich komercyjnych rozwiązań w aplikacji wykorzystano powszechnie używane telefony typu smartfonu działające pod kontrolą systemu operacyjnego Android. Większość z takich urządzeń wyposażona jest w moduł GPS. Aplikacja wykonana została w architekturze rozproszonej. Składa się z dwóch części: mobilnej i serwerowej. Część mobilna wykorzystuje telefon oraz dowolny rodzaj połączenia z Internetem. Istotnym jest także wykorzystanie GPS będącego na wyposażeniu smartfonu. Część stacjonarna, serwerowa umożliwia śledzenie pracowników firmy spedycyjnej, przesyłanie im wytycznych i celów do realizacji. Możliwe jest także odbieranie informacji na temat zdarzeń drogowych zarejestrowanych przez pracowników. System dodatkowo monitoruje czas pracy kierowców aby był on zgodny z obowiązującymi przepisami. Zaprezentowano także prosty moduł umożliwiający planowanie optymalnej trasy i postojów.
EN
In this paper the design and implementation of a simple position control system supporting order management and trade fleet were described. In contrast to expensive commercial solutions there were used in applications commonly used type of mobile smartphone running the Android operating system. The most of such devices is equipped with a GPS module. The described application is made in the client-server architecture. The application was made in a distributed architecture. It consists of two parts: mobile and server . The mobile part uses the smartphone and any kind of Internet connection. It is also important to use the GPS module included in the smartphone. The stationary part, server allows you to track the shipping company employees , sending them the guidelines and objectives for implementation. It is also possible to receive information about traffic events recorded by staff. Additionally, the system monitors the working time for drivers to make it compatible with the applicable regulations. It also presents a simple module allowing optimal planning of routes and stops.
W celu poprawnego zaimplementowania systemu telemedycznego konieczne jest stworzenie i wdrożenie odpowiednio przygotowanej centralnej aplikacji serwerowej. Aplikacja taka została opisana w poniższym artykule. Powinna ona zapewniać odpowiednią funkcjonalność i udostępniać wymagany zakres danych zarówno dla pacjentów jak i operatorów i personelu medycznego. Konieczne jest wykorzystanie odpowiednio dostosowanego protokołu komunikacyjnego w celu jednoczesnego zapewnienia kompletności informacji i zminimalizowania obciążenia dla terminali mobilnych. Jednocześnie wymagane jest podzielenie aplikacji na odpowiednie warstwy w celu ułatwienia integracji w istniejących systemach i wdrażania. Konieczne jest również zapewnienie bezbłędnej komunikacji i wysokiego poziomu bezpieczeństwa podczas uzyskiwania dostępu do chronionych danych medycznych.
EN
Proper telemedical system implementation requires a central server application for storing and managing data and diagnostics messages. Such an application is described in the presented article below. It should provide sufficient functionality and allow for appropriate access privileges for different groups of users, including patients, operators and medical staff. A properly designed protocol must be used to simultaneously provide complete and safe information and minimize load on mobile terminals. At the same time it is necessary to divide the application into proper layers to be easily integrated into existing medical systems and make implementation easier. It is also of utmost importance to provide a high level of safety during access to protected, sensitive data.
JavaScript jest wyłączony w Twojej przeglądarce internetowej. Włącz go, a następnie odśwież stronę, aby móc w pełni z niej korzystać.