code-society-25-2

Supplemental 6: Microservices Architecture (Slides)

Pre-work

Please review the following resources before lecture:

Demo: StudyCRM Microservices Architecture

The StudyCRM project is a real-world example of microservices architecture that demonstrates how large applications can be broken into smaller, independent services.

Repository

🔗 code-differently/study-crm

What It Does

StudyCRM is a Customer Relationship Management (CRM) system split into three main services that work together:

Each service has its own database and can be updated independently without breaking the others.

Key Concepts Demonstrated

Database Per Service - Each microservice has its own database, so they don’t interfere with each other.

Service Communication - Services talk to each other through APIs and message queues (Kafka).

API Gateway - A single entry point that routes requests to the right service.

Containerization - All services run in Docker containers for easy setup and deployment.

Why This Is a Good Example

StudyCRM shows how microservices solve real problems: each service can be developed by different teams, deployed independently, and scaled based on demand. If one service goes down, the others keep running.

Want to Learn More?

Check out the High-Level Architecture documentation in the repository for a deeper dive into how everything works.

Additional Resources

Tools & Frameworks