What are Microservices?
Key Takeaways
Introduces microservices and microservice architecture
Full Transcript
microservices architecture is a pattern for organizing computer systems into services that can scale with demand back in the 1990s an internet company would run a big monolithic program on a server that the company maintained on premise to serve an increase in traffic a popular company would simply add more instances of the monolith monolithic architectures do have some positive features a monolith centralizes the code base so it is in one place Engineers can step through any part of the code when they are debugging also user requests that are completely served by a monolith do not have to make many calls across a network which reduces the chance of network failures most software companies have their code in a monolith today when those monoliths get big problems can start to occur centralized code leads to tight couplings that are hard to break up if a program is too big it will be impossible to run on a typical machine internet Giants in the early 2000s began breaking up their applications into Services instead of scaling the monolithic application a service oriented architecture could scale the parts of an application that were under load operating system virtualization made service oriented architecture more more economical one server could host multiple virtualized operating system instances and each of those instances could run a service but this also meant that Engineers had to manage more and more layers of infrastructure the virtual machine host the hypervisor layer and the hardware itself failures became more complex debugging got harder in 2006 Amazon web services launch launched the elastic compute Cloud ec2 allows programmers to rent virtual machines in Amazon's data centers with Amazon taking care of failures at the hardware level and the hypervisor level programmers could focus on the virtual machine hosts themselves where their application code was running but using an entire virtual machine to run a small piece of application code is wasteful containers allow a virtual machine to be SL sliced up into isolated file system regions a container can be as large as the entire VM or as small as your smallest service hence the term microservices microservices run in containers which run on a virtual machine which runs on a hypervisor which runs on a server which sits in a rack which sits in a data center which is part of a network of data centers called the cloud containerized architecture led to a a new problem companies that ran thousands of microservices in containers on the cloud did not have a simple way of managing them kubernetes is an open- source project from Google that gives Engineers a centralized system for managing containers kubernetes also makes those Services portable creating a competitive tension between Amazon web services and Google Cloud platform both of which can host kubernetes clusters the days of micros services are just getting started software development has never been easier and the two biggest companies in the cloud are competing for users it's going to keep getting easier and cheaper
Original Description
An introduction to microservices from Software Engineering Daily. Find out about microservices and microservice architecture in this quick animation. Music by The Prion.
http://softwareengineeringdaily.com
--
Learn to code for free and get a developer job: https://www.freecodecamp.com
Read hundreds of articles on programming: https://medium.freecodecamp.com
❤️ Support for this channel comes from our friends at Scrimba – the coding platform that's reinvented interactive learning: https://scrimba.com/freecodecamp
Watch on YouTube ↗
(saves to browser)
Sign in to unlock AI tutor explanation · ⚡30
Playlist
Uploads from freeCodeCamp.org · freeCodeCamp.org · 0 of 60
← Previous
Next →
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
React: Production Server Setup Part 2 - Live Coding with Jesse
freeCodeCamp.org
cookies vs localStorage vs sessionStorage - Beau teaches JavaScript
freeCodeCamp.org
Browser history tutorial - Beau teaches JavaScript
freeCodeCamp.org
Graph Data Structure Intro (inc. adjacency list, adjacency matrix, incidence matrix)
freeCodeCamp.org
React: Parameterized Routing with Next.js - Live Coding with Jesse
freeCodeCamp.org
React: Dealing with jQuery Issues - Live Coding with Jesse
freeCodeCamp.org
setInterval and setTimeout: timing events - Beau teaches JavaScript
freeCodeCamp.org
Browser and Device Testing - Live Coding with Jesse
freeCodeCamp.org
Last Minute Updates - Live Coding with Jesse
freeCodeCamp.org
Post Launch Updates - Live Coding with Jesse
freeCodeCamp.org
React: Setting Up Google Analytics - Live Coding with Jesse
freeCodeCamp.org
React: Masonry Layout - Live Coding with Jesse
freeCodeCamp.org
Load Balancing Digital Ocean Droplets - Live Coding with Jesse
freeCodeCamp.org
try, catch, finally, throw - error handling in JavaScript
freeCodeCamp.org
Load Balancing: SSL Passthrough Setup - Live Coding with Jesse
freeCodeCamp.org
Graphs: breadth-first search - Beau teaches JavaScript
freeCodeCamp.org
React: Masonry Layout Part 2 - Live Coding with Jesse
freeCodeCamp.org
React: WordPress API Live Search - Live Coding with Jesse
freeCodeCamp.org
Creating WordPress Custom Post Types - Live Coding With Jesse
freeCodeCamp.org
Dates - Beau teaches JavaScript
freeCodeCamp.org
Miscellaneous Front End Updates - Live Coding with Jesse
freeCodeCamp.org
Merging a Pull Request from GitHub - Live Coding with Jesse
freeCodeCamp.org
React + Prettier + Standard JS - Live Coding with Jesse
freeCodeCamp.org
React: Sortable Responsive Table - Live Coding with Jesse
freeCodeCamp.org
Geolocation Sorting by Distance - Live Coding with Jesse
freeCodeCamp.org
Tradeoff Matrix - Agile Software Development
freeCodeCamp.org
The Definition of Ready - Agile Software Development
freeCodeCamp.org
Getting first React job without experience - Ask Preethi
freeCodeCamp.org
React: Google Analytics Click Tracking - Live Coding with Jesse
freeCodeCamp.org
Submitting a PR to an Open Source Project - Live Coding with Jesse
freeCodeCamp.org
Should I go back to school to get CS degree? - Ask Preethi
freeCodeCamp.org
Hero Section CSS Changes - Live Coding with Jesse
freeCodeCamp.org
Working Agreement - Agile Software Development
freeCodeCamp.org
A day at Pennybox with Co-Founder Reji Eapen
freeCodeCamp.org
React: Sorting and Filtering Data - Live Coding with Jesse
freeCodeCamp.org
React: Sorting and Filtering Data Part 2 - Live Coding with Jesse
freeCodeCamp.org
React: Building a New UI - Live Coding with Jesse
freeCodeCamp.org
Definition of Done - Agile Software Development
freeCodeCamp.org
Getting started with jQuery (tutorial) - Beau teaches JavaScript
freeCodeCamp.org
Making a React Blog with WordPress Content - Live Coding with Jesse
freeCodeCamp.org
React, NextJS, CSS - Live Coding with Jesse
freeCodeCamp.org
jQuery events - Beau teaches JavaScript
freeCodeCamp.org
React/NextJS Routing and WordPress API Custom Types - Live Coding with Jesse
freeCodeCamp.org
React: Working with API Data - Live Coding with Jesse
freeCodeCamp.org
React: Refactoring Components - Live Streaming with Jesse
freeCodeCamp.org
jQuery effects - Beau teaches JavaScript
freeCodeCamp.org
More React Refactoring - Live Coding with Jesse
freeCodeCamp.org
animate in jQuery - Beau teaches JavaScript
freeCodeCamp.org
"Finishing" My React Site - Live Coding with Jesse
freeCodeCamp.org
Starting a New React Project (P2D1) - Live Coding with Jesse
freeCodeCamp.org
React Project 2 Day 2: Learning Material UI - Live Coding with Jesse
freeCodeCamp.org
The Agile Manifesto - Agile Software Development
freeCodeCamp.org
jQuery: get and set with http, text, val, and attr - Beau teaches JavaScript
freeCodeCamp.org
React Project 2 Day 3 - Live Coding with Jesse
freeCodeCamp.org
The INVEST approach to product backlog items
freeCodeCamp.org
React Project 2 Day 4 - Live Coding with Jesse
freeCodeCamp.org
Chickens and Pigs - Agile Software Development
freeCodeCamp.org
React Project 2 Day 5 - Live Coding with Jesse
freeCodeCamp.org
jQuery: add and remove DOM elements - Beau teaches JavaScript
freeCodeCamp.org
React Project 2 Day 6 - Live Coding with Jesse
freeCodeCamp.org
More on: Systems Design Basics
View skill →Related Reads
📰
📰
📰
📰
Beyond the Hype: How to Actually Maximize Cursor for High-Performance Vibe Coding
Dev.to · Bishal Deb Roy
I Bookmarked 30+ GitHub Repos for System Design: Here Are the 10 You Actually Need in 2026
Medium · Programming
State Synchronization at the Edge: Implementing Distributed Key-Value Stores for High-Volume Application Dashboards
Dev.to · AI Expert
Knowledge Is Not a Store: Why Every Container Died and Every Loop Survived
Dev.to · Oleksander
🎓
Tutor Explanation
DeepCamp AI