Spelling suggestions: "subject:"webserver.""
11 |
A Performance Comparison of an Event-Driven Node.js Web Server and Multi-Threaded Web Servers / En prestandajämförelse mellan en händelsestyrd Node.js-webbserver och flertrådiga webbservrarVilhelmsson, Isak January 2021 (has links)
The goal of this study is to conduct a performance comparison betweenNode.js, Apache, Internet Information Services (IIS) and Go web servers in terms of throughput and memory consumption in both Input/Output (I/O)-intensive and computation-intensive situations. The computation-intensive tests consisted of calculating Fibonacci numbers, while the I/O-intensive tests consisted of querying a database. JMeter was used to send the requests and collect client- side data while Windows Performance Monitor was used to collect data on the resource use of the web servers on the server-side computer. The results showed that Go web server had the highest throughput and lowest memory consumption in all of the tests, with an average increase in throughput of 26% and an average decrease in memory consumption by 66% compared to the web servers placing second in the tests. IIS web server was the server that most often placed second behind Go. Contrary to previous studies Node.js performed worse than Apache in the I/O-intensive tests. The results also showed that Apache web server performed poorly in computation-intensive situations in terms of throughput. The conclusion is that the results indicate that Go web server performs better than Apache, IIS and Node.js web servers in both I/O- intensive and computation-intensive situations in terms of both throughput and memory consumption. / Denna studies mål är att genomföra en prestandajämförelse mellan Node.js, Apache, IIS och Go-webbservrar mätt i genomströmning och minnesallokering i både I/O-intensiva och beräkningsintensiva situationer. De beräkningsintensiva testerna bestod av att beräkna Fibonaccital medan de I/O-intensiva bestod av att be en databas om data. Programmet JMeter användes till att genomföra klientdatorns begäran till serverdatorn och till att samla data om begäran. Windows-programmet Performance Monitor användes till att samla data om webbservrarnas resursanvändning på serverdatorn. Resultaten visade att Go-webbservern hade högst genomströmmning och minst minnesallokering i alla tester med en genomströmmning som i genomsnitt var 26% högre och minnesallokering som var i genomsnitt 66% lägre än webbservrarna som presterade näst bäst i testerna. Webbservern som oftast presterade näst bäst var IIS. I motsats till resultaten i tidigare studier presterade Node.js sämre än Apache i de I/O-intensiva testerna. Apache visade sig prestera dåligt de beräkningsintensiva testerna. Studiens slutsats är att resultaten indikerar att Go-webbserver presterar bättre än Node.js, Apache och IIS-webbservrar i både I/O-intensiva och beräkningsintensiva situationer sett till genomströmning och minnesallokering.
|
12 |
Performance evaluation of Raspberry pi 3B as a web server : Evaluating the performance of Raspberry pi 3B as a web server using nginx and apache2Basha, Israel Tekahun, Istifanos, Meron January 2020 (has links)
Context. During the usage of a product, evaluating its performance quality is a crucial procedure. Web servers are one of the most used technological products in today’s modern world[1]. Thus, in this thesis we will evaluate and compare the performances of two web servers. The servers that are tested in the experiment are a raspberry pi 3B and a personal HP laptop. Objectives. The main objective of the study is to evaluate the performance of a raspberry pi 3B as a web server. In order to give a clearer image of how the raspberry pi performs, the laptop will also be evaluated and its performance will be used as a contrast during the study. Realization. To fulfill our objective, an experiment was conducted with the help of a performance testing tool called apache bench. To provide comprehensive performance results, the served content and the server software were altered throughout the experiment. The number of simulated users sending the requests were also altered. Results. The results were gathered by sending more than 1000 HTTP-requests to the two servers that served static and dynamic websites. The number of served requests per second and the CPU consumption of the servers were the recorded results. The raspberry pi exhibited response times as high as 1164 requests per second and CPU consumption that varied between ≈6% and ≈40%. In comparison to the laptop, on one occasion it exhibited a better processor utilization serving HTTPrequests of one user. Conclusions. Regardless of the used server software, although the laptop was slightly performing better, the raspberry pi had a closer response time in comparison to the laptop when both of them were serving a static website. On the contrary, when both were serving dynamic content the raspberry pi had a very low response time in the comparison. Out of the two used server software, nginx gave it a better CPU consumption in contrast to the laptop that had a better processor. That is irrespective of the served content type.
|
13 |
Compiling SDL Multiplayer Games to WebAssembly with Emscripten for use in Web Browsers / Kompilera SDL multiplayer spel till WebAssembly med Emscripten för användning i webbläsareFalkmer, Oscar, Norrman, Martin January 2022 (has links)
Collecting and deploying online games made by inexperienced developers can behard. This is something KTH (Royal Institute of Technology) has a problem withpertaining to a course involving SDL and SDL_Net programming. A good solutionto this problem is to host these games on a website. An easy-to-use way of compilingand deploying multiplayer games and game-servers written in C as web applicationsand web servers was needed. Specifically for games written in C using SDL andSDL_net libraries. The compiler toolchain Emscripten was used to compile gameand server code from C to WebAssembly, that could then be used through the generated JavaScript functions. Communication between the client and the server washandled by WebSockets. As much of the Emscripten specific functions were to behidden behind C libraries, emulating the format of SDL_Net. The finished solutionsthat emulated the format of SDL_Net, consisted of two new libraries, one for theserver and the other for the client. The libraries successfully emulated the TCP partsof SDL_Net library. The browsers event scheduler necessitates applications to beable to return control back to it. This meant that the game codes endlessly loopingfunctions had to be rewritten to enable rendering in the browser. / Det kan vara svårt att samla in och distribuera onlinespel gjorda av oerfarnautvecklare. Detta är något som KTH (Kungliga Tekniska Högskolan) har problemmed i en kurs som involverar SDL och SDL_Net programmering. En bra lösning pådetta problem är att köra dessa spel på en webbsida. Ett lättanvänt sätt att kompileraoch distribuera multiplayer-spel och spelservrar skrivna i C till webbapplikationeroch webbservrar behövdes. Specifikt för spel skrivna i C med SDL och SDL_netbiblioteken. Kompileringsverktyget Emscripten användes för att kompilera spel- ochserverkod från C till WebAssembly, som sedan kunde användas genom degenererade JavaScript-funktionerna. Kommunikationen mellan klienten ochservern sköttes av WebSockets. I största möjliga mån skulle Emscripten specifikafunktioner döljas bakom C-bibliotek som emulerade formatet av SDL_Net. Defärdiga lösningarna som emulerar formatet av SDL_Net bestod av två nya bibliotek,ett för servern och det andra för klienten. De emulerade framgångsrikt TCP-delarnaav SDL_Net biblioteket. Webbläsarens händelseschemaläggare kräver attapplikationer har möjligheten att återge kontroll till den. Detta gjorde att spelkodensoändligt loopande funktioner behövdes skrivas om för att kunna rendera i webbläsaren.
|
14 |
Integrering av glukosmätare med molntjänst för hemmonitorering / Integration of Glucose Meter with Cloud Service for Remote Patient MonitoringKaroumi, Daniel, Luong, Oscar January 2021 (has links)
Under detta examensarbete har en lösning framtagits som underlättar distansmonitorering av patienter. Då olika medicinska produkter skickar data till sina egna plattformar blir det krångligt för både patienten och vårdgivaren att ta fram och hålla koll på alla vitalparametrar som tas. Därför har en gemensam plattform, LinkWatch, utvecklats. Idag kan flera vitalparametrar mätas och ses i plattformen. En säker och effektiv dataöverföring mellan en blodsockermätare och LinkWatchs webbserver har gjorts för att utöka funktionaliteten på LinkWatch. Målet med projektet var att integrera en blodsockermätare med LinkWatch. Arbetet har utförts i programmeringsspråken Kotlin och Swift. För att få kunskap om dataöverföringen söktes information om bland annat standarden FHIR, Bluetooth Low Energy samt tidigare arbeten. Resultatet av arbetet är två applikationer, en för iOS och en för Android. Mobilapplikationerna kan koppla sig till blodsockermätaren via Bluetooth, överföra dess värden till mobilen samt skicka dessa till LinkWatchs webbserver. Applikationerna har enkla användargränssnitt och enkla layouter för att underlätta patientens användning av applikationerna. Använder patienten LinkWatch, kan patienten se sitt blodsockervärde tillsammans med andra vitalparametrar och på så sätt få en bra överblick över sin hälsa. Projektet är positivt för diabetiker och andra som är intresserade av hälsa. Tack vare den användarvänliga plattformen och mångsidigheten av LinkWatch, kan användare enklare kunna hålla koll på sitt blodsockervärde och göra livsviktiga åtgärder vid uppkomst av symtom. Vidare kan även vårdgivare ta del av information som LinkWatch lämnar ut för att exempelvis se trender i patientens blodsockervärden. Fördelarna med att dela data med vårdgivaren är bland annat reducerade kostnader och ökad trygghet hos patienterna. / During this project, a solution has been developed that promotes remote patient monitoring. As different medical products send data to their own platforms, it becomes troublesome for both the patient and the care provider to take and keep track of all the vital parameters. Hence a common platform, LinkWatch, has been developed. LinkWatch is a platform where all the patient's medical signs can be seen. To increase the functionality of LinkWatch, a secure and efficient data transfer between a blood glucose meter and LinkWatch’s web server has been established. The goal of this project was to integrate a blood glucose meter with LinkWatch. The programming languages Kotlin and Swift were used to develop the mobile applications. To gain knowledge about the data transfer, research was done to obtain information about the FHIR standard, Bluetooth Low Energy and previous work in the field. The results of the project are two applications, one for iOS and one for Android. The mobile applications can connect to the blood glucose meter with Bluetooth, transfer its values to the mobile phone and send these to LinkWatch’s web server. When the records are in LinkWatch’s system, the patient is able to see their glucose levels along with other vital parameters. This project will have a major impact on patients with diabetes and others who are interested in health. Thanks to the user-friendly platform and the flexibility of LinkWatch, users of the application will be able to more easily keep track of their blood sugar value and take early action in the event of symptoms. Furthermore, health care providers can also take part in information that LinkWatch will provide, for example see trends in the patient's blood sugar values. The benefits with sharing data with the health care providers are cost reductions and increased patient satisfaction.
|
15 |
CheckMate : Remote Arduino powered chess / Trådlöst Arduino drivet schackERICSON, JOAKIM, WESTERMARK, ADAM January 2020 (has links)
Board games are on the rise and chess is no exception. However, in an increasingly digitalized world these board games lack something in comparison to digitalized games, being able to play with anyone anywhere. This project aimed to combine these two worlds by being a physical game of chess where one could play against an opponent from far away. CheckMate is a robot consisting of an acrylic frame and various electronic components, such as an electromagnet, two stepper motors, a Hall eect sensor and a WiFi module. The electromagnet and Hall eect sensor were able to move using a belt and pulley system. This allowed magnetic pieces to be identified and dragged across the board. The board then communicated the location of all the pieces on the board, using Wifi, to an website that also kept track on whose turn it was. The result of this project was a robot that was able to perform all the moves necessary on the chessboard as well as communicating to the website. When moving a piece from one location to another the piece repelled other pieces on its way. However, this was deemed to be acceptable since the pieces were not moved too large of a distance for the electromagnet to attract them when moved into its square. One move that the robot was not able to perform was castling. The results can therefore bee seen as a starting point toward further developments. / Brädspels popularitet stiger och schack är inget undantag. Dock saknar brädspel de digitala spelens möjlighet att spela med vem som helst varsomhelst. Detta projekt ville bygga över klyftorna mellan dessa två världar genom att vara ett fysiskt schackspel med de digitala spelens möjligheter. CheckMate är en robot byggd av akrylplast och diverse elektroniska komponenter sådan som en elektromagnet, två stegmotorer, en halleektsensor och en WiFi-modul. Elektromagneten och halleektsensorn förflyttades via ett system av kuggremmar drivet av stegmotorerna. Elektromagneten användes för att flytta pjäserna på brädet medan halleektsensorn användes vid kartläggning av pjäsernas position på brädet. Brädet kommunicerade, via trådlöst nätverk, till en hemsida som användes för att spara och överföra pjäsernas positioner. Projektet resulterade i en robot som kunde göra alla motsvarande drag hämtat från hemsidan. Dock så repellerade en flyttande pjäs på de stationära pjäserna när den passerade. Detta ansågs dock vara acceptabelt då elektromagneten kunde föra tillbaka pjäserna när den befann sig i dess ruta. Något som projektet ej lyckades utföra var draget rockad. Resultatet av detta projekt kan ses som en startpunkt i en vidareutveckling eller en färdig produkt vid obesvärad spelning.
|
16 |
Jämförelse av Hypervisor & Zoner : Belastningstester vid drift av webbservrarNyquist, Johan, Manfredsson, Alexander January 2013 (has links)
Virtualisering av datorer rent generellt innebär att man delar upp hela eller delar av enmaskinkonfiguration i flera exekveringsmiljöer. Det är inte bara datorn i sig som kanvirtualiseras utan även delar av det, såsom minnen, lagring och nätverk. Virtualiseringanvänds ofta för att kunna nyttja systemets resurser mer effektivt. En hypervisorfungerar som ett lager mellan operativsystemet och den underliggande hårdvaran. Meden hypervisor har virtuella maskiner sitt egna operativsystems kärna. En annan tekniksom bortser från detta mellanlager kallas zoner. Zoner är en naturlig del avoperativsystemet och alla instanser delar på samma kärna, vilket inte ger någon extraoverhead. Problemet är att hypervisorn är en resurskrävande teknik. Genom att användazoner kan detta problem undkommas genom att ta bort hypervisorlagret och istället köramed instanser som kommunicerar direkt med operativsystemets kärna. Detta ärteoretiskt grundande och ingen tidigare forskning har utförts, därmed påkallades dennautredning. För att belysa problemet använde vi oss av Apache som webbserver.Verktyget Httperf användes för att kunna utföra belastningstester mot webbservern.Genom att göra detta kunde vi identifiera att den virtualiserade servern presterade sämreän en fysisk server (referensmaskin). Även att den nyare tekniken zoner bidrar till lägreoverhead, vilket gör att systemet presterar bättre än med den traditionella hypervisorn.För att styrka vår teori utfördes två tester. Det första testet bestod utav en virtualiseradserver, andra testet bestod av tre virtuella servrar. Anledningen var att se hur de olikateknikerna presterade vid olika scenarion. Det visade sig i båda fallen att zonerpresterade bättre och att det inte tappade lika mycket i prestanda i förhållande tillreferensmaskinerna. / Virtualization of computers in general means that the whole or parts of a machineconfiguration is split in multiple execution enviornments. It is not just the computeritself that can be virtualized, but also the resources such as memory, storage andnetworking. Virtualization is often used to utilize system resources more efficient. Ahypervisor acts as a layer between the operating system and the underlying hardware.With a hypervisor a virtual machine has its own operating system kernel. Anothertechnique that doesn't use this middle layer is called zones. Zones are a natural part ofthe operating system and all instances share the same core, this does not provide anyadditional overhead. The problem with hypervisors is that it is a rescource-demandingtechnique. The advantage with zones is that you should be able to avoid the problem byremoving the hypervisor layer and instead run instances that communicate directly tothe operating system kernel. This is just a theoretical foundation. No previous researchhas been done, which result in this investigation. To illustrate the problem we usedApache as a web server. Httperf will be used as a tool to benchmark the web server. Bydoing this we were able to identify that the virtualized server did not perform quite aswell as a physical server. Also that the new technique (zones) did contribute with loweroverhead, making the system perform better than the traditional hypervisor. In order toprove our theory two tests were performed. The first test consisted of one virtual serverand the other test consisted of three virtual servers. The reason behind this was to seehow the different techniques performed in different scenarios. In both cases we foundthat zones performed better and did not drop as much performance in relation to ourreference machines.
|
Page generated in 0.0495 seconds