Lovelace messaging microservice |
|
Author: | Syrjäkoski, Joona1; Yrjänäinen, Janne1 |
Organizations: |
1University of Oulu, Faculty of Information Technology and Electrical Engineering, Department of Computer Science and Engineering, Computer Science |
Format: | ebook |
Version: | published version |
Access: | open |
Online Access: | PDF Full Text (PDF, 1 MB) |
Pages: | 45 |
Persistent link: | http://urn.fi/URN:NBN:fi:oulu-202305171823 |
Language: | English |
Published: |
Oulu : J. Syrjäkoski; J. Yrjänäinen,
2023
|
Publish Date: | 2023-05-17 |
Thesis type: | Bachelor's thesis |
Tutor: |
Oja, Mika |
Description: |
Abstract Microservices have attracted a lot of interest in recent years. The central idea behind microservices is to divide an application into small independent services that communicate with each other through interfaces. The use of cloud computing and container technologies has accelerated the adoption of microservices. One of the main advantages of microservices is their scalability: a single service can be easily scaled to meet its needs and the failure of one component does not affect the rest of the system. Microservices also allow for easier service development, deployment, maintenance, and flexibility that was not previously possible with a monolithic architecture. This thesis provides the design and implementation of a messaging microservice for Lovelace. Lovelace is a web-based learning environment used at the University of Oulu, dedicated to programming and related studies. Among other things, Lovelace provides tools for creating course assignments that can be automatically graded. There are some problems with Lovelace’s current messaging via email. This work aims to solve those problems and provide an alternative solution to replace email. The thesis includes instructions on how to deploy the service. It starts with an overview of the microservice architecture, followed by the design and implementation of the microservice. It also covers the testing of the microservice. The aim is to provide a starting point for building a messaging microservice. Lovelace mikroviestintäpalvelu Tiivistelmä Mikropalvelut ovat herättäneet paljon kiinnostusta viime aikoina. Keskeinen ajatus mikropalveluiden taustalla on jakaa sovellus pieniin itsenäisiin palveluihin, jotka kommunikoivat keskenään rajapintojen kautta. Pilvilaskennan ja konttiteknologioiden käyttö on kiihdyttänyt mikropalvelujen käyttöönottoa. Mikropalveluiden yksi suurimmista eduista on skaalautuvuus. Yksittäistä palvelua on helppo skaalata sen tarpeiden mukaan ja yhden komponentin vikaantuminen ei vaikuta muuhun järjestelmään. Mikropalvelut mahdollistavat myös helpomman palvelun kehityksen, käyttöönoton, ylläpidon sekä joustavuuden, jota ei ollut aiemmin mahdollista saavuttaa monoliittisella arkkitehtuurilla. Tämä kandidaatintutkielma tarjoaa suunnitelman ja toteutuksen viestivälitysmikropalvelulle Lovelace-oppimisympäristöä varten. Lovelace on Oulun yliopistossa käytetty verkkopohjainen oppimisympäristö, joka on tarkoitettu ohjelmoinnille ja siihen liittyville opinnoille. Lovelace tarjoaa muun muassa työkaluja automaattisesti arvioitavien kurssiharjoitustöiden luomiseen. Lovelacen nykyinen viestinvälitys tapahtuu sähköpostitse, jossa on joitakin ongelmia. Tämän tutkielman tarkoituksena on ratkaista nuo ongelmat ja tarjota vaihtoehtoinen ratkaisu sähköpostiviestien tilalle. Tutkielma sisältää ohjeet palvelun käyttöönottamisesta. Alussa on yleiskatsaus mikropalvelinarkkitehtuurista, jonka jälkeen käydään läpi mikropalvelun suunnittelun ja toteutuksen. Tutkielmassa käsitellään myös palvelun testausta. Tarkoituksena on tarjota lähtökohta viestivälitysmikropalvelun rakentamiselle. see all
|
Subjects: | |
Copyright information: |
© Joona Syrjäkoski; Janne Yrjänäinen, 2023. Except otherwise noted, the reuse of this document is authorised under a Creative Commons Attribution 4.0 International (CC-BY 4.0) licence (https://creativecommons.org/licenses/by/4.0/). This means that reuse is allowed provided appropriate credit is given and any changes are indicated. For any use or reproduction of elements that are not owned by the author(s), permission may need to be directly from the respective right holders. |
https://creativecommons.org/licenses/by/4.0/ |