Back to Teaching
Graduate8 ECTS

Microservice Architectures

Fundamental concepts of microservices architectures, decomposition methods, data distribution approaches, API development, deployment and operation of microservices.

Offered at the University of Tirana, Faculty of Natural Sciences, Department of Informatics.

REST APIsService DecompositionDockerKubernetesAPI GatewayMessage Brokers

Overview

This course covers the fundamental concepts of microservices architectures, decomposition methods, and data distribution approaches within this architecture. Students are introduced to the methodology for developing APIs that expose a microservice, as well as their deployment and operation. Since this architecture creates small, independent subsystems, different communication approaches between them are highlighted, along with corresponding concrete implementations.

Learning Objectives

  • 1.Gain hands-on experience in the design and development of microservices
  • 2.Make decisions across different teams
  • 3.Develop REST APIs using Python
  • 4.Explore alternative deployment options for microservices

Syllabus

Week 1Introduction to Microservices
Week 2Service decomposition
Week 3-4Development of REST APIs using Python Flask
Week 5Functional (end-to-end) testing of microservices
Week 6Communication between microservices
Week 7API Gateway design pattern
Week 8Authentication and caching
Week 9-10Broker-based communication
Week 11-12Transaction management in microservices architectures
Week 13Deployment of microservices using Docker containers
Week 14Deployment of microservices using Kubernetes
Week 15Serverless architectures for deploying microservices

Literature

  • C. Richardson. Microservices patterns: with examples in Java. Simon and Schuster
  • J. H. Peralta. Microservice APIs in Python. Manning Publications, 2023
  • Flask library online documentation

Interested in this course?

This course is offered at the University of Tirana, Faculty of Natural Sciences. For enrollment information and scheduling, please contact the department or reach out directly.

Get in Touch