Dissertations / Theses on the topic 'Microservices Systems'

To see the other types of publications on this topic, follow the link: Microservices Systems.

Create a spot-on reference in APA, MLA, Chicago, Harvard, and other styles

Select a source type:

Consult the top 49 dissertations / theses for your research on the topic 'Microservices Systems.'

Next to every source in the list of references, there is an 'Add to bibliography' button. Press on it, and we will generate automatically the bibliographic reference to the chosen work in the citation style you need: APA, MLA, Harvard, Chicago, Vancouver, etc.

You can also download the full text of the academic publication as pdf and read online its abstract whenever available in the metadata.

Browse dissertations / theses on a wide variety of disciplines and organise your bibliography correctly.

1

Romin, Philip. "Unraveling Microservices : A study on microservices and its complexity." Thesis, KTH, Skolan för elektroteknik och datavetenskap (EECS), 2020. http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-290292.

Full text
Abstract:
Microservices is one of the most commonly used buzzword of the systems architecture industry and is being adopted by several of the world’s largest technology companies such as Netflix, Uber and Amazon. The architecture which embraces splitting up your system in smaller independent units is an extension of the service-oriented architecture and an opponent of the monolithic architecture. Being a top buzzword and promises of extreme scalability has spiked the interest for microservices, but unlike the relatively simple monolithic architecture the complexity of microservices creates a new set of obstacles. This work sheds a light on these issues and implements solutions for some of the most frequent problems using a case study. The study shows that while microservices can help reduce the inner complexity of a system, it greatly increases the outer complexity and creates the need for a variety of tools aimed at distributed systems. It also concludes that communication and data storage are two of the most frequently occurring issues when developing microservices with the most difficult one being how you reason with and structure your data, especially for efficient queries across microservices.
Microservices eller så kallade mikrotjänster är ett ofta förekommande buzzword inom systemarkitektur och nyttjas av flera teknikjättar som exempelvis Netflix, Uber och Amazon. Arkitekturen som bygger på att dela upp sina system i mindre oberoende delar är en utbyggnad av den tjänstorienterade arkitekturen och numera motståndare till den klassiska monolitiska arkitekturen. En plats högt upp på trendlistan och lovord om extrem skalbarhet har gjort att intresset för mikrotjänster är enormt, men till skillnad från den relativt simpla monolitiska arkitekturen skapar komplexiteten hos mikrostjänster en rad nya hinder. Det här arbetet belyser dessa hinder och implementerar även lösningar för de vanligaste förekommande problemen med hjälp av en fallstudie. Resultatet visar att även fast en mikrotjänstarkitektur kan minska systemets interna komplexitet så leder det till en markant ökning av systemets yttre komplexitet och det skapas ytterligare behov av en mängd olika verktyg och tjänster designade för distribuerade system. Studien visar också att de två mest förekommande problemen vid utveckling av en mikrotjänstarkitektur är kommunikation och datalagring där hantering och struktur av data är den mest komplicerade och kräver mycket kunskap, speciellt för att skapa effektiva datasökningar som sträcker sig över flera mikrotjänster.
APA, Harvard, Vancouver, ISO, and other styles
2

De, Alwis Adambarage. "Microservice-based reengineering of enterprise systems for cloud migration." Thesis, Queensland University of Technology, 2021. https://eprints.qut.edu.au/211471/1/Adambarage_De%20Alwis_Thesis.pdf.

Full text
Abstract:
Enterprise systems, such as enterprise resource planning and customer relationship management are widely used in corporate sectors and are notoriously large and monolithic. They are challenging to decouple because they manage asynchronous, user-driven business processes and business objects (BOs) having complex structural relationships. This thesis presents the remodularization technique combined with novel microservice patterns which utilizes both semantic properties of enterprise systems, i.e., BO structure, together with syntactic features of their code, i.e., methods and interactions, for identifying suitable parts of enterprise systems which can be run as fine-grained microservices in highly scalable Cloud systems while achieving high performance characteristics.
APA, Harvard, Vancouver, ISO, and other styles
3

Ericson, Amanda. "Mitigating garbage collection in Java microservices : How garbage collection affects Java microservices andhow it can be handled." Thesis, Mittuniversitetet, Institutionen för informationssystem och –teknologi, 2021. http://urn.kb.se/resolve?urn=urn:nbn:se:miun:diva-42299.

Full text
Abstract:
Java is one of the more recent programming languages that in runtime free applications from manual memory management by using automatic Garbage collector (GC) threads. Although, at the cost of stop-the-world pauses that pauses the whole application. Since the initial GC algorithms new collectors has been developed to improve the performance of Java applications. Still, memory related errors occurs and developers struggle to pick the correct GC for each specific case. Since the concept of microservices were established the benefits of using it over a monolith system has been brought to attention but there are still problems to solve, some associated to garbage collectors. In this study the performance of garbage collectors are evaluated and compared in a microservice environment. The measurements were conducted in a Java SpringBoot application using Docker and a docker compose file to simulate a microservice environment. The application outputted log files that were parsed into reports which were used as a basis for the analysis. The tests were conducted both with and without a database connection. Final evaluations show that one GC does not fit all application environments. ZGC and Shenandoah GC was proven to perform very good regarding lowering latency, although not being able to handle the a microservice environment as good as CMS. ZGC were not able to handle the database connection tests at all while CMS performed unexpectedly well. Finally, the study enlightens the importance of balancing between memory and hardware usage when choosing what GC to use for each specific case.
APA, Harvard, Vancouver, ISO, and other styles
4

Shafabakhsh, Benyamin. "Research on Interprocess Communication in Microservices Architecture." Thesis, KTH, Skolan för elektroteknik och datavetenskap (EECS), 2020. http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-277940.

Full text
Abstract:
With the substantial growth of cloud computing over the past decade, microservices has gained significant popularity in the industry as a new architectural pattern. It promises a cloud-native architecture that breaks large applications into a collection of small, independent, and distributed packages. Since microservices-based applications are distributed, one of the key challenges when designing an application is the choice of mechanism by which services communicate with each other. There are several approaches for implementing Interprocess communication (IPC) in microservices, and each comes with different advantages and trade-offs. While theoretical and informal comparison exists between them, this thesis has taken an experimental approach to compare and contrast common forms of IPC communications. In this the- sis, IPC methods have been categorized into Synchronous and Asynchronous categories. The Synchronous type consists of REST API and Google gRPC, while the Asynchronous type is using a message broker known as RabbitMQ. Further, a collection of microservices for an e-commerce scenario has been designed and developed using all the three IPC methods. A load test has been executed against each model to obtain quantitative data related to Performance Efficiency, and Availability of every method. Developing the same set of functionalities using different IPC methods has offered a qualitative data related to Scalability, and Complexity of each IPC model. The evaluation of the experiment indicates that, although there is no universal IPC solution that can be applied in all cases, Asynchronous IPC patterns shall be the preferred option when designing the system. Nevertheless, the findings of this work also suggest there exist scenarios where Synchronous patterns can be more suitable.
Med den kraftiga tillväxten av molntjänster under det senaste decenniet har mikrotjänster fått en betydande popularitet i branschen som ett nytt arkitektoniskt mönster. Det erbjuder en moln-baserad arkitektur som delar stora applikationer i en samling små, oberoende och distribuerade paket. Eftersom microservicebaserade applikationer distribueras och körs på olika maskiner, är en av de viktigaste utmaningarna när man utformar en applikation valet av mekanism med vilken tjänster kommunicerar med varandra. Det finns flera metoder för att implementera Interprocess-kommunikation (IPC) i mikrotjänster och var och en har olika fördelar och nackdelar. Medan det finns teoretisk och in- formell jämförelse mellan dem, har denna avhandling tagit ett experimentellt synsätt för att jämföra och kontrastera vanliga former av IPC-kommunikation. I denna avhandling har IPC-metoder kategoriserats i synkrona och asynkrona kategorier. Den synkrona typen består av REST API och Google gRPC, medan asynkron typ använder en meddelandemäklare känd som RabbitMQ. Dessutom har en samling mikroservice för ett e-handelsscenario utformats och utvecklats med alla de tre olika IPC-metoderna. Ett lasttest har utförts mot var- je modell för att erhålla kvantitativa data relaterade till prestandaeffektivitet, och tillgänglighet för varje metod. Att utveckla samma uppsättning funktionaliteter med olika IPC-metoder har erbjudit en kvalitativ data relaterad till skalbarhet och komplexitet för varje IPC-modell. Utvärderingen av experimentet indikerar att även om det inte finns någon universell IPC-lösning som kan tillämpas i alla fall, ska asynkrona IPC-mönster vara det föredragna alternativet vid utformningen av systemet. Ändå tyder resultaten från detta arbete också på att det finns scenarier där synkrona mönster är mer lämpliga.
APA, Harvard, Vancouver, ISO, and other styles
5

Friðriksson, Vilhelm. "Container overhead in microservice systems." Thesis, KTH, Radio Systems Laboratory (RS Lab), 2018. http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-235693.

Full text
Abstract:
Containers have been gaining popularity in recent years due to their ability to provide higher flexibility, higher reliability and dynamic scalability to enterprise software systems. In order to fully utilize containers, software developers aim to build their software using microservice architecture, meaning that instead of working on a single large codebase for the whole project, the software is split into smaller units. These microservices can be deployed in their own container instead of the traditional virtual machine setup where a server has to configured with all necessary dependencies. Moving away from the monolithic software architecture to containerized microservices is bound to bring performance penalties due to increased network calls between services and container overhead. The integration must therefor be carefully planned in order to fully utilize the container setup while minimizing the overhead. The purpose of this thesis project was to measure how much overhead can be expected due to containers in an enterprise environment. By using a combination of virtual machines and Docker containers, a microservice system was deployed with four different deployment strategies and the system’s performance was measured by analyzing request response times under various loads. The services were made to run on a single server and on multiple servers, with and without Docker. The performance measurements showed that the system performed worse in every case when Docker was used. Furthermore, the results showed that Docker can have significant negative impact on performance when there is a heavy load on the system.
Containers har blivit populärare under de senaste åren tack vare deras förmåga att ge högre flexibilitet, högre tillförlitlighet och dynamisk skalbarhet för företagsprogramvarusystem.  För att fullt ut kunna använda containers har programutvecklarna för avsikt att bygga sin programvara med hjälp av mikroservicearkitekturen, vilket innebär att programvaran delas upp i mindre enheter istället för att arbeta på en enda stor kodbas för hela projektet. Dessa mikroservices kan distribueras i sina egna containers istället för den traditionella virtuella maskininstallationen, där en server måste konfigureras med alla nödvändiga beroenden.  Att flytta sig från monolitisk mjukvaruarkitektur till containeriserade microservices kommer att få prestandaförsämringar på grund av ökade nätverksanrop mellan tjänster och container-overhead. Integrationen måste därför noggrant planeras för att fullt ut utnyttja containeruppsättningen och minimera overhead. Syftet med detta avhandlingsprojekt var att mäta hur mycket overhead kan förväntas på grund av containers i en företagsmiljö. Genom att använda en kombination av virtuella maskiner och Dockercontainers, implementerades ett microservices-system med fyra olika implementeringsstrategier och systemets prestanda mättes genom att analysera anropens svarstid under olika belastningar. Tjänsterna gjordes för att köras på en enda server och på flera servrar, med och utan Docker.  Prestandamätningarna visade att systemet var sämre i alla fall när Docker användes. Dessutom, visade resultaten att Docker kan ha signifikant negativ inverkan på prestanda när det är tung belastning på systemet.
APA, Harvard, Vancouver, ISO, and other styles
6

Sörensen, Ejnar. "Language Diversity in Microservices: a Case Study at Skatteverket." Thesis, Uppsala universitet, Institutionen för informatik och media, 2021. http://urn.kb.se/resolve?urn=urn:nbn:se:uu:diva-445538.

Full text
Abstract:
Microservices is a new and trendy architecture in software development and amongst its features isthe ability to open up for teams to more freely choose the tech stack and programming language thatbest fits their needs. This feature, termed language diversity for the purposes of this study, is describedin literature as a key to optimization and flexibility but is also ripe with concerns of complexity. Inthis study the author seeks to explore what language diversity could mean for the Swedish IT giantSkatteverket, the Swedish Tax Agency, from an organizational standpoint and to understand how itcan align with Skatteverket’s goals. To do so the author has performed a case study consisting of aquestionnaire sent out to tech workers in four different sections, and interviews with two keyindividuals in the organization. The results show that a significant number of respondents(p-value=0.003), consider that language diversity would improve Skatteverket’s attractiveness as anIT employer, the effects of which could be a competitive edge on the job market. It was also shownthat most (p-value<0.001) believed it would lead to at least some problems for the organization.Amongst the respondents, more experienced tech workers showed a tendency (p-value=0.06) tobelieve it would have less of a positive impact on Skatteverket’s image and were more likely tobelieve that the problems it would lead to would be greater. Overall, the study showed that languagediversity could offer other rewards than those proclaimed in literature, and that the modernizationfactor of it could play a big role for Skatteverket.
APA, Harvard, Vancouver, ISO, and other styles
7

Flygare, Robin, and Anthon Holmqvist. "Performance characteristics between monolithic and microservice-based systems." Thesis, Blekinge Tekniska Högskola, Institutionen för programvaruteknik, 2017. http://urn.kb.se/resolve?urn=urn:nbn:se:bth-14888.

Full text
Abstract:
A new promising technology to face the problem of scalability and availability is the microservice architecture. The problem with this architecture is that there is no significant study that clearly proves the performance differences compared to the monolithic architecture. Our thesis aims to provide a more conclusive answer of how the microservice architecture differs performance wise compared to the monolithic architecture. In this study, we conducted several experiments on a self-developed microservice and monolithic system. We used JMeter to simulate users and after running the tests we looked at the latency, successful throughput for the tests and measured the RAM and CPU usage with Datadog. Results that were found, were that the microservice architecture can be more beneficial than the monolithic architecture. Docker was also proven to not have any negative impact on performance and computer cluster can improve performance.  We have presented a conclusive answer that microservices can be better in some cases than a monolithic architecture.
APA, Harvard, Vancouver, ISO, and other styles
8

Dattatreya, Nadig Nikhil. "Testing Resilience of Envoy Service Proxy with Microservices." Thesis, KTH, Skolan för elektroteknik och datavetenskap (EECS), 2019. http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-264111.

Full text
Abstract:
Large scale internet services are increasingly implemented as distributed systems to achieve availability, fault tolerance and scalability. To achieve fault tolerance, microservices need to employ different resilience mechanisms such as automatic retries, rate limiting, circuit breaking amongst others to make the services handle failures gracefully and cause minimum damage to the performance of the overall system. These features are provided by service proxies such as Envoy which is deployed as a sidecar (sidecar proxy is an application design pattern which abstracts certain features, such as inter-service communications, monitoring and security, away from the main architecture to ease the tracking and maintenance of the application as a whole), the service proxies are very new developments and are constantly evolving. Evaluating their presence in a system to see if they add latency to the system and understand the advantages provided is crucial in determining their fit in a large scale system.Using an experimental approach, the services are load tested with and without the sidecar proxies in different configurations to determine if the usage of Envoy added latency and if its advantages overshadow its disadvantages. The Envoy sidecar proxy adds latency to the system; however, the benefits it brings in terms of resilience, make the services perform better when there is a high number of failures in the system.
Storskaliga internettjänster implementeras alltmer som distribuerade system för att uppnå tillgänglighet, feltolerans och skalbarhet. För att uppnå feltolerans måste microservices använda olika typer av resiliens mekanismer som automatisk återförsök, hastighetsbegränsning, kretsbrytning bland annat som tillåter tjänsterna att hantera misslyckanden graciöst och orsaka minimala skador på prestandan hos det övergripande systemet. Dessa funktioner tillhandahålls av service proxies som Envoy. Dessa proxies används som sidovagn (sidvagnproxy är ett applikationsdesignmönster som abstraherar vissa funktioner, såsom kommunikation mellan kommunikationstjänster, övervakning och säkerhet, bort från huvudarkitekturen för att underlätta spårningen och underhåll av ansökan som helhet). Dessa tjänster är väldigt nya och utvecklas ständigt. Att utvärdera deras närvaro i ett system för att se om de lägger till latens för systemet och förstå fördelarna som tillhandahålls är avgörande för att bestämma hur väl de skulle passa i ett storskaligt system. Med hjälp av ett experimentellt tillvägagångssätt testas tjänsterna med och utan sidospårproxys i olika konfigurationer för att avgöra om användningen av Envoy lägger till latens och om dess fördelar överskuggar dess nackdelar. Envoy sidecar proxy ökar latensen i systemet; De fördelar som det ger med avseende på resiliens gör tjänsterna bättre när det finns ett stort antal misslyckanden i systemet.
APA, Harvard, Vancouver, ISO, and other styles
9

Holmström, Jesper. "Distributed Queries: An Evaluation of the Microservice Architecture." Thesis, Linköpings universitet, Programvara och system, 2020. http://urn.kb.se/resolve?urn=urn:nbn:se:liu:diva-166314.

Full text
Abstract:
The microservice architecture is a new architectural style that structures an application into a set of small, independently deployable microservices, as opposed to the traditional monolith approach with a single executable. The microservice architecture is a distributed system that results in new challenges and increased complexity. This study expands the previous related research and investigates the implications of using the one-database-per-service pattern and a solution to the introduced need of queries spanning multiple microservices. In this thesis, two applications are presented, one with the microservice architecture and one monolithic counterpart, which are compared in terms of response time and throughput. As a solution for the distributed queries, the API Composition pattern was chosen. The results of the experiments conclude in a greater understanding of the difficulty in distributed queries as well as the benefits and limitations of the API composition pattern. It shows that the API composition pattern is a valid solution for distributed queries. However, it does perform worse in terms of response time and throughput than the monolith prototype. This results in the insights that one must carefully choose, with respect to the requirements of the system, when to apply it.
APA, Harvard, Vancouver, ISO, and other styles
10

Bosom, Jérémie. "Conception de microservices intelligents pour la supervision de systèmes sociotechniques : application aux systèmes énergétiques." Thesis, Université Paris sciences et lettres, 2020. http://www.theses.fr/2020UPSLP051.

Full text
Abstract:
De nombreuses institutions et entreprises ont pour ambition de gérer de manière précise la performance énergétique de leur parc immobilier, notamment en s’appuyant sur l’Internet des objets qui permet le déploiement à grande échelle de capteurs. La supervision de ces parcs peut se faire à l’aide de l’informatique distribuée en exploitant de grands volumes de données et l’apprentissage automatique. Le concept de tiers de confiance pour la mesure et la performance énergétique (TCMPE) s’impose avec les technologies du Cloud pour gérer ces écosystèmes énergétiques. La question traitée dans cette thèse est la conception d’un système de supervision distribué et extensible, allant de la collecte des données à la fourniture de tableaux de bord, permettant un pilotage des infrastructures des bâtiments d’une institution. La réalisation de cet objectif fait face à plusieurs difficultés majeures : les différentes échelles d’espace et de temps, l’hétérogénéité des composants du système, les défis inhérents à l’informatique distribuée et à la modélisation énergétique de bâtiments. L’informatique distribuée soulève des problématiques relatives à l’orchestration et à la chorégraphie de microservices, notamment celle de la mise à l’échelle. Dans ce contexte, construire la généricité de la solution apportée par rapport aux détails techniques nécessite un formalisme abstrait. À cette fin, la présentation de l’architecture du système de supervision fait usage de l’algèbre de processus Orc qui est adaptée pour la chorégraphie de processus concurrents et distribués sujets aux délais et aux pannes. La deuxième contribution est un modèle hiérarchique intitulé Multi-Institution Building Energy System (MIBES) conçu pour la modélisation du TCMPE. Ce modèle s’appuie sur différents sous-systèmes modélisés, essentiels pour l’aide à la décision : capteurs, sites, groupes de sites et organismes. Il prépare de façon rationnelle le développement d’algorithmes en fournissant de multiples vues aux différents niveaux de modélisation. Ces algorithmes sont organisés sous forme d’une bibliothèque extensible de microservices. L’adoption des méthodes de Développement et Opérations (DevOps) répond à l’organisation humaine en préconisant la collaboration humaine entre les départements de l’organisation en charge du projet et l’automatisation de ce dernier. En intégrant ces principes du DevOps, un prototype du système de supervision est développé afin de démontrer les différents avantages apportés par notre approche. Ces avantages s’expriment sous forme de facilités de mise à l’échelle, de reproductibilité et d’aide à la décision. Le prototype développé forme une base solide pour la supervision intelligente de bâtiments et peut être réutilisé pour d’autres applications telles que des Smart Grids
Many institutions and companies aim to manage precisely the energy performance of their building stocks, in particular by relying on the Internet of Things (IoT) which allows the large-scale deployment of sensors. The supervision of these building stocks can then be done using distributed computing and by exploiting the data collected using machine learning methods. The concept of Trusted Third Party for Energy Measurement and Performance (TTPEMP) is needed with Cloud technologies to manage these energy ecosystems. The question addressed in this thesis is the design of a distributed and scalable supervision system, ranging from data collection to dashboards provisioning, allowing management of the buildings’ infrastructures of several institutions. The resolution of this goal faces several major difficulties: the different scales of space and time, the system’s components heterogeneity, the inherent challenges of distributed computing and building energy modeling. Distributed computing raises issues related to microservices orchestration and choreography, in particular those of scalability. In this context, highlighting the genericity of the provided solution over the technical details requires an abstract formalism. To this end, the presentation of the supervision system architecture makes use of the Orc process algebra which is suitable for the choreography of concurrent and distributed processes that are subject to delays and failures. Our second contribution consists in providing a hierarchical model called Multi-Institution Building Energy System (MIBES) designed for the modeling of the TTPEMP. This model highlights different subsystems, that are essential for decision-making : sensors, sites, groups of sites (building stocks) and organizations. It rationally prepares the development of algorithms by providing multiple views at the different modeling levels. These algorithms are organized as an extensible library of microservices. The adoption of Development and Operations (DevOps) methods responds to human organization by advocating human collaboration between the departments of the organization in charge of the project and the automation of the latter. By integrating these DevOps principles, a prototype of the supervision system is developed in order to demonstrate the various advantages brought by our approach. These advantages are expressed in the form of scaling, reproducibility and decision-making facilities. The prototype thus produced forms a solid basis for buildings’ smart supervision and can be reused for other applications such as Smart Grids
APA, Harvard, Vancouver, ISO, and other styles
11

Ben, hadj yahia Elyas. "A Language-Based Approach for Web Service Composition." Thesis, Bordeaux, 2017. http://www.theses.fr/2017BORD0783/document.

Full text
Abstract:
Au vu des dernières avancées dans le domaine de l’ingénierie web, ainsi qu’avec la baisse de coût du cloud computing, les architectures orientées services sont rapidement devenues la solution prépondérante pour fournir des services à valeur ajoutée aux clients. Suite à cette tendance, la composition de services tiers est devenue un paradigme de référence pour le développement d’applications robustes et riches, ou encore pour l’automatisation de processus métiers. Avec la disponibilité de centaines de milliers de services et APIs web, la réalisation de telles intégrations devient lourde et fastidieuse quand effectuée manuellement. Par ailleurs, chaque client peut exiger des besoins et politiques d’intégration différentes, ce qui complexifie davantage la tâche. De plus, fournir une telle solution qui soit à la fois robuste et scalable est une tâche non-triviale. Il est donc primordial d’étudier comment coordonner de manière efficace les interactions entre les services web existants. Ainsi, cette thèse vise à étudier les problématiques liées à la composition de services web dans le contexte des pratiques de développement web modernes. Nous présentons un cadre architectural permettant la spécification de compositions de services web grâce à une approche orientée langage, et montrons comment supporter leur exécution de manière scalable grâce à MEDLEY, une plateforme légère et orientée événements
In light of the recent advances in the field of web engineering, along with the decrease of cost of cloud computing, service-oriented architectures rapidly became the leading solution in providing valuable services to clients. Following this trend, the composition of third-party services has become a successful paradigm for the development of robust and rich distributed applications, as well as automating business processes. With the availability of hundreds of thousands of web services and APIs, such integrations become cumbersome and tedious when performed manually. Furthermore, different clients may require different integration requirements and policies, which further complexifies the task. Moreover, providing such a solution that is both robust and scalable is a non-trivial task. Therefore, it becomes crucial to investigate how to efficiently coordinate the interactions between existing web services. As such, this thesis aims at investigating the underlying challenges in web service composition in the context of modern web development practices. We present an architectural framework to support the specification of web service compositions using a language-based approach, and show how we support their execution in a scalable manner using MEDLEY, a lightweight, event-driven platform
APA, Harvard, Vancouver, ISO, and other styles
12

Habbal, Nadin. "Enhancing Availability of Microservice Architecture : A Case Study on Kubernetes Security Configurations." Thesis, Luleå tekniska universitet, Institutionen för system- och rymdteknik, 2020. http://urn.kb.se/resolve?urn=urn:nbn:se:ltu:diva-79185.

Full text
APA, Harvard, Vancouver, ISO, and other styles
13

Andell, Oscar. "Architectural Implications of Serverless and Function-as-a-Service." Thesis, Linköpings universitet, Institutionen för datavetenskap, 2020. http://urn.kb.se/resolve?urn=urn:nbn:se:liu:diva-166611.

Full text
Abstract:
Serverless or Function-as-a-Service (FaaS) is a recent architectural style that is based on the principles of abstracting infrastructure management and scaling to zero, meaning application instances are dynamically started and shut down to accommodate load. This concept of no idling servers and inherent autoscaling comes with benefits but also drawbacks. This study presents an evaluation of the performance and implications of the serverless architecture and contrasts it with the so-called monolith architectures. Three distinct architectures are implemented and deployed on the FaaS platform Microsoft Azure Functions as well as the PaaS platform Azure Web App. Results were produced through experiments measuring cold starts, response times, and scaling for the tested architectures as well as observations of traits such as cost and vendor lock-in. The results indicate that serverless architectures, while it is subjected to drawbacks such as vendor lock-in and cold starts, provides several benefits to a system such as reliability and cost reduction.
APA, Harvard, Vancouver, ISO, and other styles
14

Nilsson, Eric. "Proactive Mitigation of Deprecated API Version Usage : Utilizing continuous integration to automatically and proactively detect deprecated API version usage in microservice ecosystems." Thesis, Uppsala universitet, Institutionen för informatik och media, 2021. http://urn.kb.se/resolve?urn=urn:nbn:se:uu:diva-446401.

Full text
Abstract:
The notion of change is one of the more pronounced challenges API developers face, since a change to published APIs means a change for its’ consumers. API Versioning is a commonly used strategy to mitigate the risks of changing APIs, however, the strategy introduces a possibility of having practically innumerable number of API versions published at once, all possibly used by different consumers, creating considerable overhead for API developers to manage. API Versioning and API version management are well-researched disciplines. Nevertheless, Yasmin et al. (2020) have identified a research gap in the support for API consumers to made aware of API deprecations in a proactive and automatic fashion. API Versioning in the context of microservices– which the literature seldom addresses– may serve as an interesting solution space for answering the call of Yasmin et al. (2020), due to the architecture’s strong ties to continuous integration– a practice concerned with automatically and proactively ensuring software quality. Concisely, this thesis is set out to answer Yasmin et al.’s (2020) call for research by utilizing the underexplored contextualization of microservices and continuous integration. Using a Design Science Research strategy, this thesis proposes a model detailing how deprecated RESTful web API version usage can be automatically and proactively detected in microservices using continuous integration. The model is subsequently proven to be instantiable via a proof of concept, designed for and situated at a national Swedish bank. Through a series of in-vitro simulations at the bank, the proof of concept is demonstrated to successfully being able to automatically and proactively detect deprecated RESTful web API version usage. An evaluation of the solution shows that the proof of concept– and by extent the model– fulfills the demarcated research objectives of automaticity, proactivity, generality, and autonomy. Thus, the proposed solution is determined to be both novel and useful, successfully answering the call of Yasmin et al. (2020) in the context of microservices and continuous integration.
APA, Harvard, Vancouver, ISO, and other styles
15

Frisell, Marcus. "Information visualization of microservice architecture relations and system monitoring : A case study on the microservices of a digital rights management company - an observability perspective." Thesis, KTH, Skolan för elektroteknik och datavetenskap (EECS), 2018. http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-233463.

Full text
Abstract:
90% of the data that exists today has been created over the last two years only. Part of the data space is created and collected by machines, sending logs of internal measurements to be analyzed and used to evaluate service incidents. However, efficiently comprehending datasets requires more than just access to data, as Richard Hamming puts it; "The purpose of computing is insight, not numbers." A tool to simplify apprehension of complex datasets is information visualization, which works by transforming layers of information into a visual medium, enabling the human perception to quickly extract valuable information and recognise patterns. This was an experimental design-oriented research study, set out to explore if an information visualization of microservice architecture relations combined with system health data could help developers at a Swedish digital rights management company (DRMC) to find root cause incidents, increase observability and decision support, i.e. simplifying the incident handling process. To explore this, a prototype was developed and user tests consisting of a set of tasks as well as a semi-structured interview was executed by ten developers at DRMC. The results concluded that the proposed solution provided a welcomed overview of service health and dependencies but that it lacked the ability to effectively focus on certain services, essentially making it difficult to find root causes. Visualizations like this seems to be best suited for overview-, rather than focused, comprehension. Further research could be conducted on how to efficiently render large complex datasets while maintaining focus and how to account for external factors.
90% av alla data som finns idag har skapats under de senaste två åren. En del av datautrymmet skapas och samlas in av maskiner som genererar loggar innehållandes interna systemmätningar för att utvärdera felaktiga tjänster. För att effektivt förstå ett dataset krävs mer än bara tillgång till data, som Rickard Hamming har sagt; “Syftet med datoranvändning är insikt, inte siffror.” Ett verktyg för att förenkla ens uppfattning av komplexa dataset är informationsvisualisering. Det fungerar genom att transformera lager av information till ett visuellt medium, och på så sätt tillåta mänsklig perception att snabbt extrahera värdefull information och utläsa mönster. Det här var en experimentell, design-orienterad, forskningsstudie med syftet att utforska ifall en informationsvisualisering av mikrotjänsters relationer kombinerat med system-hälso-data kunde hjälpa utvecklare på ett svenskt förvaltningsföretag av digitala rättigheter (DRMC) att hitta grundorsaken till felaktiga mikrotjänster samt utöka observerbarhet och beslutstöd, d.v.s. förenkla felhanteringsprocessen. För att utforska detta problem så utvecklades en prototyp som testades genom att låta tio utvecklare på DRMC utföra ett antal olika uppgifter samt svara på en semi-strukturerad intervju. Resultatet visade på att den föreslagna lösningen möjliggjorde en välkommen överblick över systemets hälsa och relationer, men också att den saknade möjligheten att effektivt fokusera på specifika tjänster, vilket ledde till att grundorsaksproblem var svåra att hitta. Visualiseringar som denna verkar fungera bäst för att presentera en överblick av ett system, snarare än ett fokus på specifika tjänster. Framtida forskning skulle kunna utföras för att utreda hur visualiseringar effektivt kan återge komplexa dataset utan att förlora fokus på specifika delar, samt hur externa faktorer kan integreras.
APA, Harvard, Vancouver, ISO, and other styles
16

Sarwar, Reshad, and Nathan Manzi. "More tools for Canvas : Realizing a Digital Form with Dynamically Presented Questions and Alternatives." Thesis, KTH, Kommunikationssystem, CoS, 2019. http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-251021.

Full text
Abstract:
At KTH, students who want to start their degree project must complete a paper form called “UT-EXAR: Ansökan om examensarbete/application for degree project”. The form is used to determine students’ eligibility to start a degree project, as well as potential examiners for the project. After the form is filled in and signed by multiple parties, a student can initiate his or her degree project. However, due to the excessively time-consuming process of completing the form, an alternative solution was proposed: a survey in the Canvas Learning Management System (LMS) that replace s the UT-EXAR form. Although the survey reduces the time required by students to provide information and find examiners, it is by no means the most efficient solution. The survey suffers from multiple flaws, such as asking students to answer unnecessary questions, and for certain questions, presenting students with more alternatives than necessary. The survey also fails to automatically organize the data collected from the students’ answers; hence administrators must manually enter the data into a spreadsheet or other record. This thesis proposes an optimized solution to the problem by introducing a dynamic survey. Moreover, this dynamic survey uses the Canvas Representational State Transfer (REST) API to access students’ program-specific data. Additionally, this survey can use data provided by students when answering the survey questions to dynamically construct questions for each individual student as well as using information from other KTH systems to dynamically construct customized alternatives for each individual student. This solution effectively prevents the survey from presenting students with questions and choices that are irrelevant to their individual case. Furthermore, the proposed solution directly inserts the data collected from the students into a Canvas Gradebook. In order to implement and test the proposed solution, a version of the Canvas LMS was created by virtualizing each Canvas-based microservice inside of a Docker container and allowing the containers to communicate over a network. Furthermore, the survey itself used the Learning Tools Interoperability (LTI) standard. When testing the solution, it was seen that the survey has not only successfully managed to filter the questions and alternative answers based on the user’s data, but also showed great potential to be more efficient than a survey with statically-presented data. The survey effectively automates the insertion of the data into the gradebook.
På KTH, studenter som skall påbörja sitt examensarbete måste fylla i en blankett som kallas “UT-EXAR: Ansökan om examensarbete/application for degree project”. Blanketten används för att bestämma studenters behörighet för att göra examensarbete, samt potentiella examinator för projektet. Efter att blanketten är fylld och undertecknad av flera parter kan en student påbörja sitt examensarbete. Emellertid, på grund av den alltför tidskrävande processen med att fylla blanketten, var en alternativ lösning föreslås: en särskild undersökning i Canvas Lärplattform (eng. Learning Management System(LMS)) som fungerar som ersättare för UT-EXAR-formulär. Trots att undersökningen har lyckats minska den tid som krävs av studetenter för att ge information och hitta examinator, det är inte den mest effektiva lösningen. Undersökningen lider av flera brister, såsom att få studenterna att svara på fler frågor än vad som behövs, och för vissa frågor, presenterar studenter med fler svarsalternativ än nödvändigt. Undersökningen inte heller automatiskt med att organisera data som samlats in från studenters svar. Som ett resultat skulle en administratör behöva organisera data manuellt i ett kalkylblad. Detta examensarbete föreslår en mer optimerad lösning på problemet: omskrivning av undersökningens funktionaliteter för att använda Representational State Transfer(REST) API för att komma åt studenters programspecifika data i back-end, såväl att använda speciella haschar för att hålla referenser till uppgifter som lämnas av studenterna när de svarar på frågorna i undersökningen, så att undersökningen inte bara kan använda dessa data för att dynamiskt konstruera frågor för varje enskild student, men också dynamiskt konstruera svarsalternativ för varje enskild student. Denna lösning förhindrar effektivt undersökningen från att presentera studenter med frågor och valbara svarsalternativ som är helt irrelevanta för var och en av deras individuella fall. Med den föreslagna lösningen kommer undersökningen dessutom att kunna organisera de data som samlats in från Studenterna till ett speciellt Canvas-baserat kalkyllblad, kallas som Betygsbok. För att genomföra och testa den förslagna lösningen skapades en testbar version av Canvas LMS genom att virtualisera varje Canvas-baserad mikroservice inuti en dockercontainer och tillåter containers att kommunicera över ett nätverk. Dessutom var undersökningen själv konfigurerad för att använda Lärverktyg Interoperability (LTI) standard. Vid testning av lösningen, det visade sig att undersökningen på ett sätt effektivt har lyckats använda vissa uppgifter från en testanvändare att bara endast svara på de relevanta frågorna, men också presentera användaren med en mer kondenserad lista svarsalternativ över baserat på data.<p>
APA, Harvard, Vancouver, ISO, and other styles
17

Black, Alofi S. "eHealth-as-a-Service: A service based design approach for large scale eHealth architecture." Thesis, Queensland University of Technology, 2018. https://eprints.qut.edu.au/119154/1/Alofi_Black_Thesis.pdf.

Full text
Abstract:
This thesis is an in-depth exploration of a multi-methodological design science approach to develop a purposeful eHealth-as-a-Service (eHaaS) design artifact, with potential to improve information quality in primary care settings. This was achieved by first, deriving abstract meta-requirements from an ethnographic examination of care pathways to establish the technical goals of the solution. Then, defining the functions, organization, and structure of an eHaaS conceptual model as an example of how service-based architectures might deliver high quality information services. Finally, establishing the validity of the conceptual model with the development of a novel evaluation strategy to explain the predicted change produced by eHaaS architecture. Given that, eHaas provides the foundation for developing a link between the patient and their information that is available to multiple healthcare professionals when needed.
APA, Harvard, Vancouver, ISO, and other styles
18

Ohlsson, Jonathan. "Anomaly Detection in Microservice Infrastructures." Thesis, KTH, Skolan för elektroteknik och datavetenskap (EECS), 2018. http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-231993.

Full text
Abstract:
Anomaly detection in time series is a broad field with many application areas, and has been researched for many years. In recent years the need for monitoring and DevOps has increased, partly due to the increased usage of microservice infrastructures. Applying time series anomaly detection to the metrics emitted by these microservices can yield new insights into the system health and could enable detecting anomalous conditions before they are escalated into a full incident. This thesis investigates how two proposed anomaly detectors, one based on the RPCA algorithm and the other on the HTM neural network, perform on metrics emitted by a microservice infrastructure, with the goal of enhancing the infrastructure monitoring. The detectors are evaluated against a random sample of metrics from a digital rights management company’s microservice infrastructure, as well as the open source NAB dataset. It is illustrated that both algorithms are able to detect every known incident in the company metrics tested. Their ability to detect anomalies is shown to be dependent on the defined threshold value for what qualifies as an outlier. The RPCA Detector proved to be better at detecting anomalies on the company microservice metrics, however the HTM detector performed better on the NAB dataset. Findings also highlight the difficulty of manually annotating anomalies even with domain knowledge. An issue found to be true for both the dataset created for this project, and the NAB dataset. The thesis concludes that the proposed detectors possess different abilities, both having their respective trade-offs. Although they are similar in detection accuracy and false positive rates, each has different inert abilities to perform tasks such as continuous monitoring or ease of deployment in an existing monitoring setup.
Anomalitetsdetektering i tidsserier är ett brett område med många användningsområden och har undersökts under många år. De senaste åren har behovet av övervakning och DevOps ökat, delvis på grund av ökad användning av microservice-infrastrukturer. Att tillämpa tidsserieanomalitetsdetektering på de mätvärden som emitteras av dessa microservices kan ge nya insikter i systemhälsan och kan möjliggöra detektering av avvikande förhållanden innan de eskaleras till en fullständig incident. Denna avhandling undersöker hur två föreslagna anomalitetsdetektorer, en baserad på RPCA-algoritmen och den andra på HTM neurala nätverk, presterar på mätvärden som emitteras av en microservice-infrastruktur, med målet att förbättra infrastrukturövervakningen. Detektorerna utvärderas mot ett slumpmässigt urval av mätvärden från en microservice-infrastruktur på en digital underhållningstjänst, och från det öppet tillgängliga NAB-dataset. Det illustreras att båda algoritmerna kunde upptäcka alla kända incidenter i de testade underhållningstjänst-mätvärdena. Deras förmåga att upptäcka avvikelser visar sig vara beroende av det definierade tröskelvärdet för vad som kvalificeras som en anomali. RPCA-detektorn visade sig bättre på att upptäcka anomalier i underhållningstjänstens mätvärden, men HTM-detektorn presterade bättre på NAB-datasetet. Fynden markerar också svårigheten med att manuellt annotera avvikelser, även med domänkunskaper. Ett problem som visat sig vara sant för datasetet skapat för detta projekt och NAB-datasetet. Avhandlingen slutleder att de föreslagna detektorerna har olikaförmågor, vilka båda har sina respektive avvägningar. De har liknande detekteringsnoggrannhet, men har olika inerta förmågor för att utföra uppgifter som kontinuerlig övervakning, eller enkelhet att installera i en befintlig övervakningsinstallation.
APA, Harvard, Vancouver, ISO, and other styles
19

Braun, Eric [Verfasser]. "Microservice-based Reference Architecture for Semantics-aware Measurement Systems / Eric Braun." Karlsruhe : KIT-Bibliothek, 2020. http://d-nb.info/1222109514/34.

Full text
APA, Harvard, Vancouver, ISO, and other styles
20

Harr, Daniel. "EFFICIENT SCALES OF MICROSERVICE-ORIENTED SYSTEMS A comparison of evolutionary algorithms." Thesis, Umeå universitet, Institutionen för datavetenskap, 2019. http://urn.kb.se/resolve?urn=urn:nbn:se:umu:diva-165166.

Full text
Abstract:
Many modern soft‰ware systems are designed into a microservice-oriented architecture as they run into issues when a‹ttempting to scale. An issue with large and complex microservice-oriented systems is to know which scales of a system that are well-performing with regard to resource usage. Identifying effcient scales is interesting to minimize resource usage and cost while maximizing performance.‘ The optimal scales of a demo system is investigated using multi-objective Ant Colony and Particle Swarm optimization. Th‘e optimization methods are evaluated and compared with respect to properties of the resulting set of scales, and how much of the search space that is discovered for the solutions to be produced.‘ The experiments show that Ant Colony is more consistent in producing the entire correct set of scales. Particle Swarm however is cheaper with regard to the number of scales that need to be tested in order to produce a result. Since testing a scale becomes more expensive as the investigated system grows in size and complexity, an initial conclusion is that Particle Swarm would be more viable for a real-world scenario. ‘There are however some ideas of improvements that could a‚ffect the conclusions, and a larger and more complex system should be tested as well before any real conclusions can be made.
APA, Harvard, Vancouver, ISO, and other styles
21

Naess, Mathias. "Jämförelse mellan MySQL och NoSQL vid lagring av användningsdata i microservice-applikation/arkitektur." Thesis, Högskolan i Skövde, Institutionen för informationsteknologi, 2021. http://urn.kb.se/resolve?urn=urn:nbn:se:his:diva-19999.

Full text
Abstract:
Microservice-arkitektur är en växande trend inom utvecklingen av applikationer, även lagring av användningsdata. Lagringen av användningsdata sker bland annat i syfte för att öka Quality of service vilket innefattar bland annat tiden vid sidladdning. I rapporten utförs experiment för att mäta påverkan lagringen av användningsdata har på sidladdningstiden och huruvida den påverkan går att mitigera genom optimering av lagring i form av val av databassystem. En Microservice applikation utvecklas med alternativa lagringsstrategier för MongoDB och MySQL vad gäller lagring för användningsdata. Lagringen av användningsdata sker enligt web mining tekniken Web Usage Mining och mätningar utförs på laddningstiden med hjälp av automatiserade användare genom användningen av javascript. Resultaten av mätningarna analyseras sedan för att avgöra vilken databashanterare som är mest lämpad för lagring av användningsdata i en applikation byggd i microservice-arkitektur.

Det finns övrigt digitalt material (t.ex. film-, bild- eller ljudfiler) eller modeller/artefakter tillhörande examensarbetet som ska skickas till arkivet.

APA, Harvard, Vancouver, ISO, and other styles
22

Eriksson, Mats. "A case study of performance comparison between monolithic and microservice-based quality control system." Thesis, Linköpings universitet, Programvara och system, 2020. http://urn.kb.se/resolve?urn=urn:nbn:se:liu:diva-166755.

Full text
Abstract:
Microservice architecture has emerged as a new way to create large complex applications by removing some problems that exist for a monolithic counterpart. While this will asset agility, resilience, maintainability and scalability within the application, other problems will be predominant such as performance. This case study aims to provide more clarity on this matter by comparing a microservice architecture with a monolithic architecture. By conducting several experiment on two self-developed systems it could be found that microservice architecture will must likely show a lower performance in terms of throughput and latency on HTTP requests which use internal communication requests. On small intensive HTTP requests with minimum internal communication the difference between the architectures is so low it could almost be neglected. With microservice architecture comes other challenges that a company must keep into account such loadbalancing, caching and orchestration which are beneficial for the performance.
APA, Harvard, Vancouver, ISO, and other styles
23

Nhat, Minh Pham. "A proposal for a cloud-based microservice architecture for the Skolrutiner system." Thesis, Uppsala universitet, Institutionen för informationsteknologi, 2020. http://urn.kb.se/resolve?urn=urn:nbn:se:uu:diva-428348.

Full text
Abstract:
Skolrutiner, a fast-moving startup company, has a great idea of aplatform for handling documents. However, they do not have a scalableand modular system architecture since all the current services arecentralized and running on a single virtual machine. The main purposeof this thesis is to study and design a cloud-based microservicesystem for the platform of the company. This new microserviceapproach, with the help of many modern features of cloud computing,is expected to resolve the major issues of the current system. Theproposed architecture might be costly and challenging to implement,but it could help the company to have a general knowledge about cloudcomputing, microservices, and how to apply these technologies to theexpanding business. The re-implementation of the Skolrutiner systembased on the given architecture is out of the scope of this thesiswork.
APA, Harvard, Vancouver, ISO, and other styles
24

Boronin, Mikhail. "Hybrid Cloud Migration Challenges. A case study at King." Thesis, Uppsala universitet, Informationssystem, 2020. http://urn.kb.se/resolve?urn=urn:nbn:se:uu:diva-413540.

Full text
Abstract:
Migration to the cloud has been a popular topic in industry and academia in recent years. Despite many benefits that the cloud presents, such as high availability and scalability, most of the on-premise application architectures are not ready to fully exploit the benefits of this environment, and adapting them to this environment is a non-trivial task.Therefore, many organizations consider a gradual process of moving to the cloud with Hybrid Cloud architecture. In this paper, the author is making an effort of analyzing particular enterprise case in cloud migration topics like cloud deployment, cloud architecture and cloud management.This paper aims to identify, classify, and compare existing challenges in cloud migration, illustrate approaches to resolve these challenges and discover the best practices in cloud adoption and process of conversion teams to the cloud.
APA, Harvard, Vancouver, ISO, and other styles
25

Widerberg, Anton, and Erik Johansson. "Observability of Cloud Native Systems: : An industrial case study of system comprehension with Prometheus & knowledge transfer." Thesis, Blekinge Tekniska Högskola, Institutionen för industriell ekonomi, 2021. http://urn.kb.se/resolve?urn=urn:nbn:se:bth-22019.

Full text
Abstract:
Background:                                                                                                            Acquiring comprehension and observability of software systems is a vital and necessary activity for testing and maintenance; however, these tasks are time-consuming for engineers. Concurrently cloud computing requires microservices to enhance the utilization of cloudnative deployment, which simultaneously introduces a high degree of complexity. Further,codifying and distributing technical knowledge within the organization has been proven to be vital for both competitiveness and financial performance. However, doing it successfully has been proven to be difficult, and transitioning to working virtually and in DevOps brings new potential challenges for software firms. Objective:                                                                                                              The objective of this study is to explore how system comprehension of a microservice architecture can be improved from performance metrics through an exploratory data analysis approach. To further enhance the practical business value, the thesis also aims to explore the effects transitioning to virtual work and DevOps have had on knowledge sharing for software firms. Method:                                                                                                                    A case study is conducted at Ericsson with performance data generated from testing of a system deployed in Kubernetes. Data is extracted with Prometheus, and the performance behavior of four interacting pods is explored with correlation analysis and visualization tools.Furthermore, to explore virtual work and DevOps effects on intra-organizational knowledge sharing of technical knowledge, semi-structured interviews were cross analyzed with literature. Results:                                                                                                                  An overall high correlation between performance metrics could be observed with deviations between test cases. Also, we were able to generate propositions regarding the performance behavior as well as bring forward possible candidates for predictive modeling. Four new potential decisive factors driving the choice of activities and transfer mechanisms for knowledge transfer are identified, namely, accessibility, dynamicity, established processes, and efficiency. The transition to virtual work showed five positive factors and three negatives. Effects from DevOps were mostly connected to the frequency of sharing and the potentials of automation.  Conclusions: Our findings suggest that correlation analysis, when used along with visualization tools, can improve system comprehension of cloud-native systems. And while it shows promise for analyzing individual services and hypothesis creation, the method utilized in the study showcased some drawbacks which are covered in the discussion. The findings also point towards the fact that performance metrics can be a rich information source for knowledge and thus deserves further investigation.Findings also suggest that knowledge sharing is not only considered an important element by academia but also deliberately practiced by industry agents. Looking at the transition to virtual work and DevOps, the results imply that they affect knowledge transfer, both in combination and isolation. However, the case study findings do point towards the fact that the transition to working virtually potentially exerts a larger influence. Interviewees expressed both positive and negative aspects of virtual knowledge sharing. Simultaneously, the positive influences of DevOps were followed by extensive challenges.
Bakgrund:  Att erhålla förståelse och observerbarhet av mjukvarusystem är en vital och nödvändig aktivitet, speciellt för testning och underhåll. Samtidigt så är dessa uppgifter både komplexa och tidskrävande för ingenjörer. Mikroservicearkitekturen som utnyttjas för att bygga molnintegrerade lösningar introducerar en hög grad av komplexitet. Fortsättningsvis, att kodifiera och distribuera teknisk kunskap har visats vara kritiskt för organisationers konkurrenskraft och finansiella resultat. Att göra det framgångsrik har dock flertal utmaningar och när flera mjukvarubolag under senare tid övergått till att arbeta virtuellt samt skiftat till DevOps har flertalet nya potentiella utmaningar uppdagats. Syfte:  Målet med denna studie är att utforska hur systemförståelse av mjukvarusystem baserade på en mikroservicearkitektur kan förbättras utifrån prestandamätningar med hjälp av undersökande dataanalysmetoder. För att ytterligare utöka det praktiska affärsvärdet så avser avhandlingen även att undersöka effekterna som övergången till virtuellt arbete och DevOps har haft på denintern kunskapsspridning inom mjukvarubolag.  Metod: En fallstudie utförs på Ericsson AB med prestandadata som genererats under testkörningar av ett system som kör på Kubernetes. Data extraherad med Prometheus och prestationsbeteendet utav fyra interagerande ”pods” utforskas genom korrelationsanalys och visualiseringsverktyg. För att undersöka effekterna från virtuellt arbete samt DevOps har på intraorganisatorisk kunskapsdelning av teknisk kunskap så utförs semi-strukturerade intervjuer som sedan korsanalyseras med litteratur. Resultat:  Överlag så uppvisas hög korrelation mellan prestandamätvärden samtidigt som tydliga avvikelser observerades mellan testfall. Utöver detta så generades propositioner angående prestationsbeteendet samtidigt som potentiella kandidater för prediktiv modellering framhävs. Fyra nya potentiella determinanter identifieras för valet av aktiviteter samt överföringsmekanism, nämligen tillgänglighet, dynamik, etablerade processer, och effektivitet. Övergången till virtuellt arbete uppvisade främst fem positiva faktorer och tre negativa. Effekterna utav DevOps var särskilt kopplade till frekvensen av delning samt potential för automation. Slutsatser: Våra resultat tyder på att korrelationsanalys i kombination med visualiseringsverktyg kan användas för att skapa systemförståelse av molnbaserade system. Samtidigt som metoden visar potential för att analysera individuella tjänster och generera hypoteser så påvisar metoden i vår studie vissa nackdelar vilket tas upp i diskussionen. Resultatet tyder dessutom på att prestandadata kan vara en rik informationskälla för kunskapsskapande och bör vara av intresse för ytterligare studier.Resultaten av den kvalitativa undersökning indikerar att kunskapshantering inte bara är ett viktigt element ur akademins perspektiv men även något som omsorgsfullt praktiseras av industrin. Resultatet angående övergången till virtuellt arbete samt DevOps antyder på att båda har inflytande på hur kunskapsspridning bedrivs, både var för sig och i kombination. Samtidigt pekar våra undersökningsresultat på att övergången till att arbeta virtuellt potentiellt har påverkat kunskapshantering i betydligt större utsträckning än DevOps. Intervjuerna uppvisade både positiva och negativa aspekter utav den virtuella påverkan samtidigt som de positiva effekter som uppmättes av DevOps uppföljdes av omfattande utmaningar.
APA, Harvard, Vancouver, ISO, and other styles
26

Hölscher, Anton. "The Latency Effects of Utilizing a Microservice Architecture in a Time-Critical System." Thesis, Linköpings universitet, Institutionen för datavetenskap, 2021. http://urn.kb.se/resolve?urn=urn:nbn:se:liu:diva-178295.

Full text
Abstract:
This study aims to examine the effects of transforming a monolithic server system into a microservice architecture, focusing on the increased latency introduced by using a microservice orchestrator. The microservice orchestrator was implemented using an OpenFlow switch controlled by the Beacon and Ryu OpenFlow controllers. These controllers, along with the round robin, random assign and a server-aware load balancing algorithm, were all compared in order to find the combination resulting in the lowest latency and highest achieved server balance in varying network environments. We show that the OpenFlow switch enforces a client-aware load balancing policy and that only the initial request is handled by the controller, effectively reducing the importance of choosing the optimal OpenFlow controller. In addition, the round robin load balancer was preferred when dealing with homogeneous requests, and a server-aware load balancer was required for heterogeneous requests. For most requests, the system would only slow down by a few microseconds using the proposed architecture. However, for 0.001\% of all requests, the slowdown was much more significant, with each of those requests being at least 100 times slower than when using a monolithic server architecture.
APA, Harvard, Vancouver, ISO, and other styles
27

Höffl, Marc. "A new programming model for enterprise software : Allowing for rapid adaption and supporting maintainability at scale." Thesis, KTH, Elkraftteknik, 2017. http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-215103.

Full text
Abstract:
Companies are under constant pressure to adapt and improve their processes to staycompetitive. Since most of their processes are handled by software, it also needs toconstantly change. Those improvements and changes add up over time and increase thecomplexity of the system, which in turn prevents the company from further adaption.In order to change and improve existing business processes and their implementation withinsoftware, several stakeholders have to go through a long process. Current IT methodologies arenot suitable for such a dynamic environment. The analysis of this change process shows thatfour software characteristics are important to speed it up. They are: transparency, adaptability,testability and reparability. Transparency refers to the users capability to understand what thesystem is doing, where and why. Adaptability is a mainly technical characteristic that indicatesthe capability of the system to evolve or change. Testability allows automated testing andvalidation for correctness without requiring manual checks. The last characteristic is reparability,which describes the possibility to bring the system back into a consistent and correct state, evenif erroneous software was deployed.An architecture and software development patterns are evaluated to build an overall programmingmodel that provides the software characteristics. The overall architecture is basedon microservices, which facilitates decoupling and maintainability for the software as well asorganizations. Command Query Responsibility Segregation decouples read from write operationsand makes data changes explicit. With Event Sourcing, the system stores not only the currentstate, but all historic events. It provides a built-in audit trail and is able to reproduce differentscenarios for troubleshooting and testing.A demo process is defined and implemented within multiple prototypes. The design of theprototype is based on the programming model. It is built in Javascript and implements Microservices,CQRS and Event Sourcing. The prototypes show and validate how the programmingmodel provides the software characteristics. Software built with the programming model allowscompanies to iterate faster at scale. Since the programming model is suited for complex processes,the main limitation is that the validation is based on a demo process that is simpler and thebenefits are hard to quantify.
ör att fortsatt vara konkurrenskraftiga är företag under konstant press att anpassa ochförbättra sina processer. Eftersom de flesta processer hanteras av programvara, behöveräven de ständigt förändras. Övertiden leder dessa förbättringar och förändringar till ökadsystemkomplexitet, vilket i sin tur hindrar företaget från ytterligare anpassningar. För attförändra och förbättra befintliga affärsprocesser och dess programvara, måste idag typiskt fleraaktörer vara en del av en lång och tidskrävande process. Nuvarande metoder är inte lämpade fören sådan dynamisk miljö. Detta arbete har fokuserat på fyra programvaruegenskaper som ärviktiga för att underlätta förändringsprocesser. Dessa fyra egenskaper är: öppenhet, anpassningsförmåga,testbarhet och reparerbarhet. Öppenhet, hänvisar till förmågan att förstå varför, var ochvad systemet gör. Anpassningsbarhet är huvudsakligen en teknisk egenskap som fokuserar påsystemets förmåga att utvecklas och förändras. Testbarhet strävar efter automatisk testning ochvalidering av korrekthet som kräver ingen eller lite manuell kontroll. Den sista egenskapen ärreparerbarhet, som beskriver möjligheten att återhämta systemet till ett konsekvent och korrekttillstånd, även om felaktig programvara har använts. En programmeringsmodell som rustarprogramvara med de ovan beskrivna programegenskaperna är utvecklad i detta examensarbete.Programmeringsmodellens arkitektur är baserad på diverse micro-tjänster, vilka ger brafrånkopplings- och underhållsförmåga för en programvara, samt användarorganisationerna.Command Query Responsibility Segregation (CQRS) frånkopplar läsoperationer från skrivoperationeroch gör ändringar i data explicita. Med Event Sourcing lagrar systemet inte endastdet nuvarande tillståndet, utan alla historiska händelser. Modellen förser användarna medett inbyggt revisionsspår och kan reproducera olika scenarion för felsökning och testning. Endemoprocess är definierad och implementerad i tre olika prototyper. Designen av prototypernaär baserad på den föreslagna programmeringsmodellen. Vilken är byggd i Javascript och implementerarmicro-tjänster, CQRS och Event Sourcing. Prototyperna visar och validerar hurprogrammeringsmodellen ger programvaran rätt egenskaper. Programvara byggd med dennaprogrammeringsmodell tillåter företag att iterera snabbare. De huvudsakliga begränsningarna iarbetet är att valideringen är baserad på en enklare demoprocess och att dess fördelar är svåraatt kvantifiera.
APA, Harvard, Vancouver, ISO, and other styles
28

Blixt, Fanny. "Real-time auto-test monitoring system." Thesis, Luleå tekniska universitet, Institutionen för system- och rymdteknik, 2021. http://urn.kb.se/resolve?urn=urn:nbn:se:ltu:diva-85824.

Full text
Abstract:
At Marginalen Bank, there are several microservices containing endpoints that are covered bytest automation. The documentation of which microservices and endpoints that are covered byautomated tests is currently done manually and is proven to contain mistakes. In the documentation, the test coverage for all microservices together and for every individual microserviceis presented. Marginalen Bank needs a way to automate this process with a system that cantake care of test coverage documentation and present the calculated data. Therefore, the purpose of this research is to find a way to create a real-time auto-test monitoring system thatautomatically detects and monitors microservices, endpoints, and test automation to documentand present test automation coverage on a website. The system is required to daily detect andupdate the documentation to be accurate and regularly find eventual changes. The implemented system that detects and documents the test automation coverage is calledTest Autobahn. For the system to detect all microservices, a custom hosted service was implemented that registers microservices. All microservices with the custom hosted service installedand extended to registers to Test Autobahn when deployed on a server. For the system todetect all endpoints of each microservice, a custom middleware was implemented that exposesall endpoints of a microservice with it installed. For the microservices to be able to install theseand get registered, a NuGet package containing the custom hosted service and the custom middleware, was created. To detect test automations, custom attributes models were created thatare supposed to be inserted into each test automation project. The custom attributes are placedin every test class and method within a project, to mark which microservice and endpoint thatis being tested within every automated test. The attributes of a project can be read throughthe assembly. To read the custom attributes within every test automation project, a consoleapplication, called Test Autobahn Automation Detector (TAAD), was implemented. TAADreads the assembly to detect the test automations and sends them to Test Autobahn. Test Autobahn couples the found test automation to the corresponding microservices and endpoints.TAAD is installed and ran on the build pipeline in Azure DevOps for each test automationproject to register the test automations. To daily detect and update the documentation of the test coverage, Quartz.NET hosted serviceis used. With Quartz.NET implemented, Test Autobahn can execute a specified job on a schedule. Within the job, Test Autobahn detects microservices and endpoints and calculates the testautomation coverage for the detection. The calculation of the test coverage from the latestdetection is presented on the webpage, containing both the test coverage for all microservicestogether and the test coverage for each microservice. According to the evaluations, the systemseems to function as anticipated, and the documentation is displaying the expected data.
APA, Harvard, Vancouver, ISO, and other styles
29

Johansson, Gustav. "Investigating differences in response time and error rate between a monolithic and a microservice based architecture." Thesis, KTH, Skolan för elektroteknik och datavetenskap (EECS), 2019. http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-264840.

Full text
Abstract:
With great advancements in cloud computing, the microservice architecture has become a promising architectural style for enterprise software. It has been proposed to cope with problems of the traditional monolithic architecture which includes slow release cycles, limited scalability and low developer productivity. Therefore, this thesis aims to investigate the affordances and challenges of adopting microservices as well as the difference in performance compared to the monolithic approach at one of Sweden’s largest banks, SEB - the Scandinavian Individual Bank. The investigation consisted of a literature study of research papers and official documentation of microservices. Moreover, two applications were developed and deployed using two different system architectures - a monolithic architecture and a microservice architecture. Performance tests were executed on both systems to gather quantitative data for analysis. The two metrics investigated in this study were response time and error rate. The results indicate the microservice architecture has a significantly higher error rate but a slower response time than the monolithic approach, further strengthening the results of Ueda et. al. [47] and Villamizar et. al. [48]. The findings have then been discussed with regards to the challenges and complexity involved in implementing distributed systems. From this study, it becomes clear the complexity shifts from inside the application out towards infrastructure with a microservice architecture. Therefore, microservices should not be seen as a silver bullet. Rather, the type of architecture is highly dependent on the scope of the project and the size of the organization.
Med stora framstegen inom molntjänster har microservice arkitekturen kommit att bli en lämplig kandidat för utveckling av företagsprogramvara. Denna typ av systemarkitektur har föreslagits att lösa de problem som den traditionella monolitiska arkitekturen medför; långsamma lanseringar, begränsad skalbarhet och låg produktivitet. Således fokuserar denna avhandling på att utforska de möjligheter samt utmaningar som följer vid adoptering av microservices samt skillnaden i prestanda jämfört med den monolitiska arkitekturen. Detta undersöktes på en av Sveriges största banker, SEB, den Skandinaviska Enskilda Banken. Utredningen bestod av en litteraturstudie av vetenskapliga artiklar samt officiell dokumentation för microservices. Dessutom utvecklades och lanserades två applikationer byggt med två olika typer av systemarkitektur - en som monolitisk arkitektur och den andra som en microservice arkitektur. Prestandatest utfördes sedan på båda systemen för att samla kvantitativ data för analys. De två nyckelvardena som undersöktes i denna studie var responstid och felfrekvens. Resultaten indikerar att microservice arkitekturen har en signifikant högre felfrekvens men en långsammare responstid än den monolitiska arkitekturen, vilket stärker resultaten av Ueda et. al. [47] och Villamizar et. al. [48]. Forskningsresultaten har diskuterats med hänsyn till den komplexitet och de utmaningar som följer vid implementering av distribuerade system. Från denna studie blir det tydligt att komplexiteten i en microservice arkitektur skiftar från inuti applikationen ut till infrastrukturen. Således borde microservices inte ses som en silverkula. Istället är valet av systemarkitektur strikt beroende på omfattningen av projektet samt storleken på organisationen i fråga.
APA, Harvard, Vancouver, ISO, and other styles
30

Karlsson, Eric. "The evolution and erosion of a service-oriented architecture in enterprise software : A study of a service-oriented architecture and its transition to a microservice architecture." Thesis, Linköpings universitet, Programvara och system, 2018. http://urn.kb.se/resolve?urn=urn:nbn:se:liu:diva-151415.

Full text
Abstract:
In this thesis project, a company’s continuously evolved service-oriented software architecture was studied for signs of architectural erosion. The architecture has been continuously developed over some time and the company have experienced a reduction in architectural quality and felt that it no longer fulfilled its design goals and therefore decided to start working on a replacement architecture based on the microservice archi-tectural style. This thesis project therefore aimed to study how the current architectures quality have changed during its evolution, find the causes of these changes in quality, andestimate how the planned microservice migration will effect these changes in quality. This study was performed in three steps. First, a suite of suitable quality metrics where gathered based on the stated architectural design goals and what information can be ex-tracted from the history of the implemented architecture. A tool was developed to model the architecture and to gather the quality metrics from the current architecture and how ithas changed over one year’s worth of development and evolution. Secondly, the causes ofthese changes in architectural quality was investigated through developer interviews with a wide range of developers that had worked on the architecture and the web application that it provides the structure for. The interviews focused on the topics of architectural knowledge, what consideration is taken to its design during component development, maintenance of existing components and architecture, as well as questions regardingspecific components and anomalies. Thirdly and finally, the migration to a microserviceand its effects on the quality of the current architecture is estimated through performing microservice reengineering on the model used to evaluate the current architecture. The tools developed during this thesis allowed for an analysis of the architecture didshow an increase in consistency violations, structural problems and level the of coupling have substantially increased over the version history that the model tracked. It was discov-ered by the developer interviews that some of the causes of this erosion was due to among other reasons an abandonment of some architectural deign decisions, lack of architectural knowledge on certain topics, and none-optimal development conditions and priorities. The microservice reengineering showed how the migration could be used to improve themeasured quality metrics and that a migration alongside some other architectural erosionprevention and repair methods could create an architecture that are more modular and erosion tolerant.
APA, Harvard, Vancouver, ISO, and other styles
31

Walden, Love. "Fault prediction in information systems." Thesis, KTH, Skolan för elektroteknik och datavetenskap (EECS), 2019. http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-254670.

Full text
Abstract:
Fault detection is a key component to minimizing service unavailability. Fault detection is generally handled by a monitoring system. This project investigates the possibility of extending an existing monitoring system to alert based on anomalous patterns in time series.The project was broken up into two areas. The first area conducted an investigation whether it is possible to alert based on anomalous patterns in time series. A hypothesis was formed as follows; forecasting models cannot be used to detect anomalous patterns in time series. The investigation used case studies to disprove the hypothesis. Each case study used a forecasting model to measure the number of false, missed and correctly predicted alarms to determine if the hypothesis was disproved.The second area created a design for the extension. An initial design of the system was created. The design was implemented and evaluated to find improvements. The outcome was then used to create a general design.The results from the investigation disproved the hypothesis. The report also presents a general software design for an anomaly detection system.
Feldetektering är en nyckelkomponent för att minimera nedtid i mjukvarutjänster. Feldetektering hanteras vanligtvis av ett övervakningssystem. Detta projekt undersöker möjligheten att utöka ett befintligt övervakningssystem till att kunna skicka ut larm baserat på avvikande mönster i tidsserier.Projektet bröts upp i två områden. Det första området genomförde en undersökning om det är möjligt att skicka ut larm baserat på avvikande mönster i tidsserier. En hypotes bildades enligt följande; prognosmodeller kan inte användas för att upptäcka avvikande mönster i tidsserier. Undersökningen använde fallstudier till att motbevisa hypotesen. Varje fallstudie använde en prognosmodell för att mäta antalet falska, missade och korrekt förutsedda larm. Resultaten användes sedan för att avgöra om hypotesen var motbevisad.Det andra området innefattade skapadet av en mjukvarudesign för utökning av ett övervakningssystem. En initial mjukvarudesign av systemet skapades. Mjukvarudesignen implementerades sedan och utvärderades för att hitta förbättringar. Resultatet användes sedan för att skapa en generell design. Resultaten från undersökningen motbevisade hypotesen. Rapporten presenterar även en allmän mjukvarudesign för ettanomalitetsdetekteringssystem.
APA, Harvard, Vancouver, ISO, and other styles
32

Луценко, Іван Андрійович. "Мікросервісна архітектура в хмарних програмно-апаратних комплексах з використовуванням технології Node.JS." Bachelor's thesis, КПІ ім. Ігоря Сікорського, 2021. https://ela.kpi.ua/handle/123456789/45315.

Full text
Abstract:
Дипломна робота: 79 ст., 22 рис, 7 табл., 2 дод., 11 джерел. Тема: мікросервісна архітектура в хмарних програмно-апаратних комплексах з використовуванням технології Node.JS. У роботі розглянуто різні варіанти побудови систем наприклад мікросервіси, монолітна архітектура, безсерверна. Об’єкт дослідження: Різні варіанти побудови архітектур, переваги і недоліки мікросервісної архітектури. Предмет дослідження: Основні шаблони мікросервісної архітектури. Мета роботи: Розробити програмний продукт, у якому будуть розглянуті основні шаблони, та будуть вирішенні основні проблеми мікросервісної архітектури. Створено програмний продукт для оцінки предметів з використанням мікросервісного підходу та технології Node.JS.
Thesis: 79 pages, 22 figures, 7 tables, 2 appendices, 11 sources. Topic: microservice architecture in cloud software and hardware using Node.JS technology. The paper considers various options for building systems such as microservices, monolithic architecture, serverless. Object of research: Different options for building architectures, advantages and disadvantages of microservice architecture. Subject of research: Basic templates of microservice architecture. Purpose: To develop a software product that will consider the basic templates, and will solve the main problems of microservice architecture. Developed a software product for the assessment of objects using a microservice approach and Node.JS technology.
APA, Harvard, Vancouver, ISO, and other styles
33

Nguyen, Quang-Duy. "Interoperability and Upgradability Improvement for Context-Aware Systems in Agriculture 4.0." Thesis, Université Clermont Auvergne‎ (2017-2020), 2020. http://www.theses.fr/2020CLFAC017.

Full text
Abstract:
La prochaine évolution de l’agriculture est l’Agriculture 4.0. Dans ce domaine, les nouvelles technologies de l’Internet des Objets (IdO) et les systèmes contextuels sont utilisés pour améliorer les performances des activités agricoles. Un système contextuel est un système capable de réagir automatiquement et adéquatement en fonction du contexte. Le fait d’utiliser un tel système permet non seulement de réduire la charge de travail des agriculteurs, mais aussi d’améliorer la précision des activités agricoles. Cependant, leur emploi dans le monde rencontre deux obstacles spécifiques. Le premier obstacle est le besoin de mettre régulièrement à jour le système contextuel sans changer sa fonctionnalité. Ce besoin s’appuie sur le fait que l’agriculture est une activité saisonnière, avec un lieu de travail externe, ce qui implique plusieurs facteurs imprévisibles qui influent sur les aspects logiciels et matériels du système. Le deuxième obstacle est l’hétérogénéité de données générées à partir du système contextuel. Dans le domaine agricole, on trouve des capteurs variés observant des phénomènes variés et produisant des données également variées. Représenter ces données est un fait nécessaire pour l’interopérabilité des dispositifs à l’intérieur un système contextuel, ou pour l’interopérabilité de plusieurs systèmes contextuels différents à l’intérieur l’écosystème de l’IdO. Cette thèse propose trois contributions. La première est une architecture s’appuyant sur le principe de microservice. Cette architecture est une pile de services pour les systèmes contextuels, qui permet aux développeurs d’un système de se focaliser sur les objectifs des services plutôt que leurs aspects logiciels et matériels. La deuxième contribution est une ontologie, intitulé CASO, dédiée aux systèmes contextuels. Cette ontologie fournit un vocabulaire pour modéliser les données générées par le système contextuel. De plus, elle inclut un mécanisme pour créer des règles de raisonnement. La troisième contribution est un système d’aide à la décision (SAD) pour l’irrigation automatique, développé à partir d’IRRINOV® , une méthode d’irrigation manuelle. Il fait partie d’un système contextuel dédié à l’irrigation de l’équipe TSCF d’INRAE. Ce SAD est basé sur la pile de services pour les systèmes contextuels,et utilise l’ontologie IRRIG, une spécialisation de CASO dédiée à l’irrigation. Les trois contributions vont être appliquées dans un système contextuel d’irrigation déployé dans l’AgroTechnoPôle, situé à Montoldre, en France
The next evolution of agriculture is Agriculture 4.0. Agriculture 4.0 is about using technologies ofthe Internet of Things (IoT) and Context-Aware Systems (CASs) to increase the performance offarming activities. A CAS can react automatically and adequately to the environment based onits context. Applying CASs in agriculture can reduce farm labor and increase the precision offarming activities. However, it encounters two challenges specific to agriculture. The firstchallenge relies on the need to upgrade a CAS regularly with new computing devices orsoftware programs without changing its functionality. Indeed, natural factors, such as violentweather and wild animals, can damage the computing devices located on farmland. Moreover,after each farming season, farmers may need to upgrade their system with new computingdevices and software programs. The second challenge is the data heterogeneity generated froma CAS. In agriculture, various phenomena involve the need to have different sensor devices thatmake numerous types of measurements and produce heterogeneous data. Representing all ofthese heterogeneous data is necessary for the interoperability of different computing devices ina CAS or the interoperability between different CASs in the IoT ecosystem. This thesis proposesthree contributions. The first contribution addresses the first challenge. It is a new architecturebased on the microservice mindset that allows system developers to focus on the services’goals rather than the computing devices and software programs of a CAS. This newarchitecture is called the stack of services for CASs. The second contribution addresses thesecond challenge. It is a new ontology for CASs named CASO. The ontology provides avocabulary to model heterogeneous data generated from CASs and embodies a mechanism tomake rules for reasoning. The third contribution is to build a decision support system (DSS) forthe irrigation CAS in the research unit TSCF, INRAE. The design of the DSS relies on the stackof services for CASs. Moreover, the DSS uses a new ontology called IRRIG, a specialization ofCASO for irrigation. The DSS is an automation version of the manual irrigation methodIRRINOV®. All the guidelines for farmers in IRRINOV® are transformed into rules for reasoning.The contributions of this thesis are going to be applied to build a smart irrigation CAS deployedin AgroTechnoPôle, located in Montoldre, France
APA, Harvard, Vancouver, ISO, and other styles
34

Hedman, Surlien Peter. "Economic advantages of Blockchain technology VS Relational database : An study focusing on economic advantages with Blockchain technology and relational databases." Thesis, Blekinge Tekniska Högskola, Institutionen för industriell ekonomi, 2018. http://urn.kb.se/resolve?urn=urn:nbn:se:bth-17366.

Full text
Abstract:
Many IT-systems are when created not designed to be flexible and dynamic resulting in old and complex systems hard to maintain. Systems usually build their functionality and capability on the data contained in their databases. The database underlines such system, and when data do not correspond between different and synchronizing systems, it is a troublesome debugging process. This is because systems are complex and the software architecture is not always easy to understand. Due to increasing complexity in systems over time, making systems harder to debug and understand, there is a need for a system that decreases debugging costs. Furthermore, result in better transaction costs. This study proposes a system based on blockchain technology to accomplish this.   An ERP system based on blockchain with encrypted transactions was constructed to determine if the proposed system can contribute in better transaction costs. A case study at multiple IT-companies and comparison to an existing ERP system module validated the system. A successful simulation showed that multiple parts could read and append data to an immutable storage system for one truth of data. By all counts, and with proven results, the constructed blockchain solution based on encrypted transactions for an ERP system can reduce debugging costs.   It is also shown that a centralized database structure where external and internal systems can get one truth of data, decreases transaction costs. However, it is the decision makers in companies that need to be convinced for the constructed system to be implemented. A problem is also when modifications to the object type, then historical transactions cannot be changed in an immutable storage solution. Blockchain is still a new technology, and the knowledge of the technology and the evolution of the system determines if the proposed software architecture will result in better transaction costs.
APA, Harvard, Vancouver, ISO, and other styles
35

Гаваньо, Богдан Іванович. "Методи та засоби оцінювання стану людини в медичних кіберфізичних системах." Diss., Національний університет «Львівська політехніка», 2021. https://ena.lpnu.ua/handle/ntb/56755.

Full text
APA, Harvard, Vancouver, ISO, and other styles
36

Ertel, Sebastian. "Towards Implicit Parallel Programming for Systems." 2019. https://tud.qucosa.de/id/qucosa%3A36874.

Full text
Abstract:
Multi-core processors require a program to be decomposable into independent parts that can execute in parallel in order to scale performance with the number of cores. But parallel programming is hard especially when the program requires state, which many system programs use for optimization, such as for example a cache to reduce disk I/O. Most prevalent parallel programming models do not support a notion of state and require the programmer to synchronize state access manually, i.e., outside the realms of an associated optimizing compiler. This prevents the compiler to introduce parallelism automatically and requires the programmer to optimize the program manually. In this dissertation, we propose a programming language/compiler co-design to provide a new programming model for implicit parallel programming with state and a compiler that can optimize the program for a parallel execution. We define the notion of a stateful function along with their composition and control structures. An example implementation of a highly scalable server shows that stateful functions smoothly integrate into existing programming language concepts, such as object-oriented programming and programming with structs. Our programming model is also highly practical and allows to gradually adapt existing code bases. As a case study, we implemented a new data processing core for the Hadoop Map/Reduce system to overcome existing performance bottlenecks. Our lambda-calculus-based compiler automatically extracts parallelism without changing the program's semantics. We added further domain-specific semantic-preserving transformations that reduce I/O calls for microservice programs. The runtime format of a program is a dataflow graph that can be executed in parallel, performs concurrent I/O and allows for non-blocking live updates.
APA, Harvard, Vancouver, ISO, and other styles
37

Fernandes, Joel de Sousa. "Ferramenta de visualização para melhorar a observação de aplicações de microsserviços." Master's thesis, 2020. http://hdl.handle.net/10316/90105.

Full text
Abstract:
Dissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia
O surgimento de arquitecturas em microsserviços procura combater a complexidade crescente das arquitecturas implementadas nos habituais monólitos, devido à separação do software em partes lógicas, ou seja, em vários serviços. No entanto, com a redução da complexidade pela separação em serviços, aumenta dificuldade em monitorizar o comportamento da aplicação devido à sua natureza distribuída.Com o objectivo de analisar as actuais ferramentas existentes que possam solucionar este problema, foi realizada uma fase de estudo das mesmas. O estudo das aplicações existentes teve como conclusão o facto de, actualmente, as soluções existentes de visualização de grafos provenientes da recolha de traces serem pouco objectivas na visualização e/ou inexistentes. Outro problema é a compatibilidade das aplicações de monitorização de performance com o tracing de OpenCensus ou OpenTracing, as especificações de tracing existentes nos dias de hoje. Surge como consequência a necessidade de desenvolver uma aplicação que solucione as lacunas anteriormente descritas. A solução desenvolvida procura resolver o problema da fácil visualização de informação relativa a arquitecturas distribuídas, mais precisamente, da informação recolhida através dos traces. A entrada de dados da aplicação é um conjunto de informação dos traces recolhidos, anteriormente processados pelo cliente. Como resultado, é fornecida ao utilizador uma visão geral da informação recolhida nos traces sob a forma de grafos de dependências de serviços.
The emergence of architectures in microservices seeks to fight the growing complexity of the architectures implemented in the usual monoliths, due to the separation of the software into logical parts, i.e. several independent services from each other. However, with the reduction of complexity by the separation into services, it becomes more difficult to monitor the application behavior due to its distributed nature which increases the communication between system components in the network. In order to analyze the existing tools that can solve this problem, a study phase of these tools was carried out during the first half of the master thesis. The study of the existing applications concluded that, currently, the existing solutions for visualization of graphs from the collection of traces are poorly implemented for the visualization of this graphs and/or non-existent. Another problem is the compatibility of performance monitoring applications with OpenCensus or OpenTracing tracing, the tracing specifications existing today. Therefore, there is a need to develop an application that solves the shortcomings described above.The developed solution seeks to solve the problem of ease of visualization of information regarding distributed architectures, more precisely, the information collected through traces. The application data input is a set of information from the traces collected, previously processed by the client. As a result, the user is provided with an overview of the information collected in the traces in the form of graphs of service dependencies.
Outro - Projeto PTDC/EEI-ESS/1189/2014 — Data Science for Non- Programmers, apoiado por COMPETE 2020, Portugal 2020- POCI, UE-FEDER and FCT. Financiamento de 756 euros por mês, numa duração de 3 meses.
APA, Harvard, Vancouver, ISO, and other styles
38

Sulewski, Patryk, and Hallborg Jesper. "Experimental Investigation of Container-based Virtualization Platforms For a Cassandra Cluster." Thesis, 2017. http://urn.kb.se/resolve?urn=urn:nbn:se:bth-14544.

Full text
Abstract:
Context. Cloud computing is growing fast and has established itself as the next generationsoftware infrastructure. A major role in cloud computing is the virtualization of hardware toisolate systems from each other. This virtualization is often done with Virtual Machines thatemulate both hardware and software, which in turn makes the process isolation expensive. Newtechniques, known as Microservices or containers, has been developed to deal with the overhead.The infrastructure is conjoint with storing, processing and serving vast and unstructureddata sets. The overall cloud system needs to have high performance while providing scalabilityand easy deployment. Microservices can be introduced for all kinds of applications in a cloudcomputing network, and be a better fit for certain products.Objectives. In this study we investigate how a small system consisting of a Cassandra clusterperform while encapsulated in LXC and Docker containers, compared to a non virtualizedstructure. A specific loader is built to stress the cluster to find the limits of the containers.Methods. We constructed an experiment on a three node Cassandra cluster. Test data is sentfrom the Cassandra-loader from another server in the network. The Cassandra processes are thendeployed in the different architectures and tested. During these tests the metrics CPU, disk I/O,network I/O are monitored on the four servers. The data from the metrics is used in statisticalanalysis to find significant deviations.Results. Three experiments are being conducted and monitored. The Cluster test pointed outthat isolated Docker container indicate major latency during disk reads. A local stress test furtherconfirmed those results. The step-wise test in turn, implied that disk read latencies happened dueto isolated Docker containers needs to read more data to handle these requests. All Microservicesprovide some overheads, but fall behind the most for read requests.Conclusions. The results in this study show that virtualization of Cassandra nodes in a clusterbring latency in comparison to a non virtualized solution for write operations. However, thoselatencies can be neglected if scalability in a system is the main focus. For read operationsall microservices had reduced performance and isolated Docker containers brought out thehighest overhead. This is due to the file system used in those containers, which makes disk I/Oslower compared to the other structures. If a Cassandra cluster is to be launched in a containerenvironment we recommend a Docker container with mounted disks to bypass Dockers filesystem or a LXC solution.
APA, Harvard, Vancouver, ISO, and other styles
39

Mendes, David Jorge Garcia. "Automated Testing for Provisioning Systems of Complex Cloud Products." Master's thesis, 2019. http://hdl.handle.net/10362/92293.

Full text
Abstract:
Context: The proliferation of cloud computing enabled companies to shift their approach regarding infrastructure provisioning. The uprising of cloud provisioning enabled by virtualisation technologies sprouted the rise of the Infrastructure as a Service (IaaS) model. OutSystems takes advantage of the IaaS model to spin-up infrastructure on-demand while abstracting the infrastructure management from the end-users. Problem: OutSystems’ orchestrator system handles the automated orchestration of the clients’ infrastructure, and it must be thoroughly tested. Problems arise because infrastructure provisioning takes considerable amounts of time, which dramatically increases the feedback loop for the developers. Currently, the duration of the orchestrator tests hinder the ability to develop and deliver new features at a desirable pace. Objectives: The goals of this work include designing an efficient testing strategy that considers a microservices architecture with infrastructure provisioning capabilities while integrating it in a Continuous Integration (CI)/Continuous Deployment (CD) pipeline. Methods: The solution applies multiple testing techniques that target different portions of the system and follow a pre-determined test distribution to guarantee a balanced test suite. The strategy was tested against a set of prototypes to evaluate its adequacy and efficiency. The strategy definition focuses on mapping the type of errors that each test level should tackle and is, therefore, independent of the employed technologies. Results: The devised strategy is integrated in a CI/CD pipeline and is capable of comprehensively test the created prototypes while maintaining a short feedback loop. It also provides support for testing against commonly found errors in distributed systems in a deterministic way. Conclusions: The work developed in this dissertation met the outlined objectives, as the developed strategy proved its adequacy against the developed prototypes. Moreover, this work provides a solid starting point for the migration of the orchestrator system to a microservices architecture.
APA, Harvard, Vancouver, ISO, and other styles
40

Filipe, Ricardo Ângelo Santos. "Client-Side Monitoring of Distributed Systems." Doctoral thesis, 2020. http://hdl.handle.net/10316/91181.

Full text
Abstract:
Tese no âmbito do Programa de Doutoramento em Ciências e Tecnologias da Informação apresentada à Faculdade de Ciências e Tecnologia da Universidade de Coimbra
From critical systems to entertainment, most computer systems have become distributed. Compared to standalone applications, distributed systems are more complex, dificult to operate and maintain, thus increasing the probability for outages or other malfunctions. Properly monitoring the system is therefore even more important. However, recovering a complete image of the system is a herculean task for administrators, who often need to resort to a large plethora of tools. Despite all these tools, the person that many times identifies the degradation or the system outage is the one that is somehow disregarded in the monitoring chain - the client. Almost daily, we have examples in the news from companies that had outages or system degradation perceived by the final client with a direct impact on the companies' revenues and image. The lack of client-side monitoring and the opportunity to improve current monitoring mechanisms paved the way for the key research question in this thesis. We argue that the client has information on the distributed system that monitoring applications should use to improve performance and resilience. In this work, we aim to evaluate the limits of black-box client-side monitoring and to extend white-box with client information. Additionally, we are very interested to understand what kind of information does the system leak to the client. To evaluate this approach, we resorted to several experiments in distinct scenarios from three-tier web sites to microservice architectures, where we tried to identify performance issues from the client-side point-of-view. We used client profiling, machine learning techniques among other methods, to demonstrate that using client information may serve to improve the observability of a distributed system. Properly including client-side information proved to be an interesting and challenging research effort. We believe that our work contributed to advance the current state-ofart in distributed system monitoring. The client has viable information that eludes administrators and provides important insights on the system.
Desde os sistemas críticos ao entretenimento, a maioria dos sistemas computacionais tornou-se distribuída. Quando comparados a aplicações monolíticas, os sistemas distribu ídos são mais complexos, difíceis de operar e manter, aumentando assim a probabilidade de anomalias. A monitoria de um sistema distribuído é desta forma ainda mais importante. Todavia, obter uma imagem completa do sistema é uma tarefa árdua para os administradores, que frequentemente precisam de recorrer a uma grande variedade de ferramentas. Mesmo com a superabundância de ferramentas, a pessoa que muitas vezes identi ca a degradação ou a interrupção do sistema é a mesma que de alguma forma é desconsiderada no uxo de monitoria: o cliente. Quase diariamente, temos exemplos na comunicação social de empresas que tiveram interrupções ou degradação no serviço prestado percebido pelo cliente nal, com impacto direto nas receitas e na imagem dessas empresas. A falta de monitoria do ponto de vista do cliente e a oportunidade de melhorar a monitoria atual abriram o caminho para a questão chave de pesquisa nesta tese. Argumentamos que o cliente possui informação sobre o sistema distribuído que as ferramentas de monitora devem usar para melhorar o desempenho e resiliência. Neste trabalho pretendemos avaliar os limites de uma monitoria do lado do cliente de uma forma caixa-negra , e extender as soluções de caixa-branca com informação do cliente. Além disso, estamos também interessados em entender que tipo de informação é que o sistema escapa para o cliente. Para avaliar esta abordagem, recorremos a várias experiências em cenários distintos desde sites de três camadas até arquiteturas de micro serviços, onde tentamos identi- car problemas do ponto de vista do cliente. Usámos técnicas de criação de pro ling do ponto de vista do cliente, técnicas de Machine Learning, entre outros métodos, para demonstrar que o uso de informações do cliente pode servir para melhorar a observabilidade de um sistema distribuído. A inclusão de informações do cliente provou ser um tópico de pesquisa interessante e desa ador. Acreditamos que o nosso trabalho contribuiu para avançar o atual estado da arte de monitoria em sistemas distribuídos. O cliente possui informações viáveis que escapam ao controlo dos administradores e fornece conhecimento importante sobre o sistema.
Altice Labs
APA, Harvard, Vancouver, ISO, and other styles
41

Kadariya, Srison. "IT infrastructure & microservices authentication." Master's thesis, 2021. http://hdl.handle.net/10198/23768.

Full text
Abstract:
Mestrado IPB-ESTG
BIOma - Integrated solutions in BIOeconomy for the Mobilization of the Agrifood chain project is structured in 6 PPS (Products, Processes, and Services) out of which, a part of PPS2 is covered in this work. This work resulted in the second deliverable of PPS2 which is defined as PPS2.A1.E2 - IT infrastructure design and graphical interface conceptual design. BIOma project is in the early stage and this deliverable is a design task of the project. For defining the system architecture, requirements, UML diagrams, physical architecture, and logical architecture have been proposed. The system architecture is based on microservices due to its advantages like scalability and maintainability for bigger projects like BIOma where several sensors are used for big data analysis. Special attention has been devoted to the research and study for the authentication and authorization of users and devices in a microservices architecture. The proposed authentication solution is a result of research made for microservices authentication where it was concluded that using a separate microservice for user authentication is the best solution. FIWARE is an open-source initiative defining a universal set of standards for context data management that facilitates the development of Smart solutions for different domains like Smart Cities, Smart Industry, Smart Agrifood, and Smart Energy. FIWARE’s PEP (Policy Enforcement Point) proxy solution has been proposed in this work for the better management of user’s identities, and client-side certificates have been proposed for authentication of IoT (Internet of Things) devices. The communication between microservices is done through AMQP (Advanced Message Queuing Protocol), and between IoT devices and microservices is done through MQTT (Message Queuing Telemetry Transport) protocol.
APA, Harvard, Vancouver, ISO, and other styles
42

Wan, En Fu, and 萬恩福. "Real-Time Modeling Program Trading System Based On Microservice Architecture." Thesis, 2016. http://ndltd.ncl.edu.tw/handle/56d627.

Full text
APA, Harvard, Vancouver, ISO, and other styles
43

Martins, Guilherme Vale. "Designing Microservice Systems Using Patterns: An Empirical Study On Architectural Trade-offs." Master's thesis, 2021. https://hdl.handle.net/10216/135539.

Full text
APA, Harvard, Vancouver, ISO, and other styles
44

Martins, Guilherme Vale. "Designing Microservice Systems Using Patterns: An Empirical Study On Architectural Trade-offs." Dissertação, 2021. https://hdl.handle.net/10216/135539.

Full text
APA, Harvard, Vancouver, ISO, and other styles
45

Galymbyek and Galymbyek. "Adding new Functionalities to a Legacy System with Microservices: A case study of ezScrum." Thesis, 2017. http://ndltd.ncl.edu.tw/handle/6qrcv9.

Full text
Abstract:
碩士
國立臺北科技大學
電資學院外國學生專班
105
Software development is a field that is constantly evolving in technology such as: new architectural design, methodologies, language specific frameworks and so on. Generally, software developers implement their application despite the requirements in a traditional monolithic way where all the modules and components are wrapped together and deployed as a single unit. As the time passes applications become larger due to requirements leading to unwanted complexity bottleneck, hence making the application hard to maintain and extend further. Unlike to this traditional monolithic architecture, microservice offers an alternative approach – where application can be developed as a set of small independently deployable modular services in which each services communicate each other with lightweight mechanism such as HTTP/REST to serve its goal. In this thesis we focus on how to add microservices while keeping the monolith application using Problem Frames approach. It is a method to software requirement analysis, where it focuses more on identifying the problem and make the descriptions that are needed to solve the problem. Typically, we extract context diagram from overall problem statement, thus decomposing it into sub-problems using the five distinct problem frame classes where each has its own specific frame diagrams and descriptions. By using this approach we would be able to identify the problem of the new microservices by discovering and analyzing the problems within its context, therefore decomposing it into several sub-problems and hence analyze the interoperation between microservices with ezScrum monolith.
APA, Harvard, Vancouver, ISO, and other styles
46

Ou-Luyu and 歐律佑. "Building notification system based on Microservice architecture: A Case Study of ezScrum." Thesis, 2017. http://ndltd.ncl.edu.tw/handle/72cq84.

Full text
Abstract:
碩士
國立臺北科技大學
資訊工程系研究所
105
ezScrum is a development management system that has been developed for more than 10 years. At present the user is updating ezScrum at the completion of the task or when taking a new task outside of Daily Scrum meeting. The other team members can only know the status of other members during Daily Scrum, there may have other people started to do the same work. ezScrum has become a complex system after a long time of adding new features and bug fix, such that follow-up development is difficult because new team member have to spend a lot of time to understand ezScrum. The purpose of this study is to provide Notification service by Microservice architecture. We have two advantages, can solve taking task problem and Microservice architecture is independent, so developer team don’t restrict to original ezScrum system, hence we can use different technology to implement Notification service. In addition, we also provide REST API as a communication channel with ezScrum.
APA, Harvard, Vancouver, ISO, and other styles
47

LU, TSENG-CHUNG, and 呂增崇. "Developing a Microservice Software System with Spring Cloud - A Case Study of Meeting Scheduler." Thesis, 2019. http://ndltd.ncl.edu.tw/handle/env9n5.

Full text
Abstract:
碩士
國立高雄師範大學
軟體工程與管理學系
107
The traditional monolithic architecture is to componentize the function modules of the application and execute them on the same service port. With the increase of requirements, the coupling relations between modules become more and more complicated, resulting in inflexible function expansion and difficult maintenance. When there is a program change, the entire application system must be repackaged and deployed. Microservices architecture divides a single application into several independent executed services. Each service has its own business logic. The services communicate with each other using the REST API. The scalability and maintainability of the system are improved by features such as independent update and independent deployment. This study implements a Meeting Scheduler monolithic software system using traditional object-oriented software development process. Further, we use Spring Cloud to implement the required microservices and deploy them in the Meeting Scheduler. Finally, this study explores the development experience of microservices software systems and establishes a microservices development process for software engineers to analyze, design, implement and deploy a software system based on microservices.
APA, Harvard, Vancouver, ISO, and other styles
48

WANG, WEI-CHI, and 王暐淇. "Design of a High Scalability Microservice Flow System Based on API Gateway Management Platform." Thesis, 2019. http://ndltd.ncl.edu.tw/handle/8s28w6.

Full text
Abstract:
碩士
國立臺北科技大學
資訊工程系
107
With the rapid development of information technology, peoples needs are constantly changing and increasing. In todays business environment, competition is getting more and more intense. In order to satisfy customer needs, service providers must provide services not only with sufficient scalability, the service traffic, data security, and API version are important considerations when designing services, so that users can use the service quickly and smoothly. This research is based on the API management platform as the infrastructure, combined with many microservices on the back-end, following the design method of software engineering, designing various service modules and processes, and manage the service through the API management platform, to implement an application system that can easily manage API traffic, API versions, and security.
APA, Harvard, Vancouver, ISO, and other styles
49

Gemelgo, António Alberto Pessegueiro. "Supply Chain (micro)TMS development." Master's thesis, 2022. http://hdl.handle.net/10362/134279.

Full text
Abstract:
Project Work presented as the partial requirement for obtaining a Master's degree in Information Management, specialization in Information Systems and Technologies Management
The rise of technology across many verticals has necessitated the company’s move to digitalization. Despite “XPTO” company a well know player on the retail and success on e‐commerce internal market, they aimed at the strategy of continuous innovation to drive business growth and strengthen their position as a premium brand. They decided to move forward into digitalism inside cloud based solutions to get all the advantages of microservices architecture: optimize logistics and supply chain management, speed up the workflow and maximize service efficiency. An agile organization is not achieved purely by shifting the focus from traditional functional/ technological oriented organizations. The new way to organize teams must reflect all the principles and right segregations of roles, which will be the most immediate and visible disruption and cutover from the traditional way of managing the IT. In this project we aim to use agile framework with development based in house cloud microservice solution for a (micro)TMS solution/system that address the immediate needs imposed by the market in order to use it has competitive advantage.
APA, Harvard, Vancouver, ISO, and other styles
We offer discounts on all premium plans for authors whose works are included in thematic literature selections. Contact us to get a unique promo code!

To the bibliography