๐Ÿฑ Today's menu

Hi ๐Ÿ‘‹, comments?

Contact me

v26.7.160724

Breaking the Monolith for Students

April, 10 2023. 6 minutes read.



This post explains why we rebuilt a teaching tool from scratch, and why microservices matter even in education.


The Problem


I built a supportive tool for my students. It started small: a web platform where they could collaborate on prototyping assignments as part of Project-based Learning. One module for CES framework (first-year students). One for F/NF (second year). One for Business Model Canvas (third year). One for Platform Design Canvas (fourth year).


All running on a single Flask app. One database. One server. Monolith.


It worked fine when usage was low. But as more students joined (across multiple cohorts, all using the same platform), the system started choking. One slow query from a fourth-year student's PDC module would lag the entire platform for everyone. Adding a new prototyping framework meant touching code that affected all other modules. Deploying an update meant restarting everything.


The Decision


We decided to decompose. Break the monolith into microservices. Each prototyping framework becomes its own service with its own database. Authentication, logging, notifications become separate services too. They communicate via REST APIs through an API Gateway.


This is not a new idea in industry. But applying microservice architecture to a teaching tool is unusual. The motivation is not scale (we do not have millions of users). The motivation is isolation: when we deploy a new module for next semester's curriculum, it should not risk breaking what is already working.


What Changed


The results showed the improvement. 63% of students noticed Server B (microservice) was faster than Server A (monolith). More than 83% agreed the tools helped collaboration. And from a development perspective, adding new prototyping frameworks no longer requires touching existing code.


We also got security benefits: credential data and transactional data now live in separate databases. OAuth2 and OpenID standards handle authentication. The attack surface of each service is smaller.


Read the Full Paper


The architecture diagrams, interprocess communication design, service registry setup, Docker containerization, performance benchmarks, and student survey results are all in the paper:


Read the full paper: Microservice Based Architecture for Rapid Prototyping Supportive Tools โ†’


Published at IEEE EDUNINE 2023. If you are building educational platforms and wondering whether microservices are overkill for your scale, this paper might help you decide.



Microservices are not about scale. They are about isolation. Deploy without fear.

@hepidad