Тёмный

Monolithic vs Microservice Architecture: Which To Use and When? 

Alex Hyett
Подписаться 36 тыс.
Просмотров 58 тыс.
50% 1

When it comes to software architecture, there are generally 2 main types, monoliths, and microservices. In this video, I cover the differences between each of them and discuss which ones you should be using for your next project.
With microservices, you need to have a good understanding of cloud-based platforms. AWS is used by a lot of companies, and you can earn more if you have a certification such as AWS Certified Solutions Architect. Zero To Mastery covers everything you need to learn in one of their courses (use FRIENDS10 for 10% off) academy.zerotomastery.io/a/af...
☕️ I don’t accept paid sponsorships and I have turned off mid-video ads. You’re welcome! If you would like to support my channel see: ko-fi.com/alexhyett
📨 Join my free weekly newsletter for advice, technology and more: newsletter.alexhyett.com
🗺️ Backend Developer Roadmap: www.alexhyett.com/backend-dev...
📝 Related blog post: www.alexhyett.com/monolithic-...
🎓 RECOMMENDED COURSES (Use code FRIENDS10 for 10% off)
The Complete Web Developer Course - academy.zerotomastery.io/a/af...
The Complete Junior to Senior Web Developer Roadmap - academy.zerotomastery.io/a/af...
Complete SQL + Databases Bootcamp - academy.zerotomastery.io/a/af...
📚 RECOMMENDED BOOKS
Clean Code - geni.us/5AEwj2
Domain Driven Design - geni.us/WiR0Q0x
Design Patterns - geni.us/5ncUt
Developer Hegemony - geni.us/lAXy
Pragmatic Programmer - geni.us/GfNj9
Data Structures and Algorithms Made Easy - geni.us/sqg6kJ
Refactoring - geni.us/ufAP0mE
Pragmatic Thinking and Learning - geni.us/x81A
Microservices - geni.us/8vMA
🚀 MY FAVOURITE TOOLS
PIA VPN - piavpn.com/AlexHyett (83% off)
Visual Studio Code - code.visualstudio.com/
Obsidian - obsidian.md/
Notion - affiliate.notion.so/alexhyett
⏳ TIMESTAMPS
00:00 - Introduction
00:16 - What is a Monolith?
00:53 - Advantages of Monoliths
02:09 - Disadvantages of Monoliths
03:36 - Microservices
04:13 - Microservice Communication
05:29 - Advantages of Microservices
07:46 - Disadvantages of Microservices
09:17 - Which should you use?
You can check out more of my favourite tools on my website:
www.alexhyett.com/tech/
🔗 MY KEY LINKS
🌍 Blog - www.alexhyett.com/
🐘 Mastodon - social.alexhyett.com/@alex
🧑‍💻WHO AM I
I'm Alex, a Software Developer and RU-vid working in the UK. I make videos about software development to help developers with the skills they need to be senior developers. As well as this RU-vid Channel, I also write articles on my website (alexhyett.com) as well as write a regular newsletter that contains some thoughts to help aspiring developers.
‼️ DISCLAIMERS
Some of the links in this description are affiliate links, for which I get a small commission, at no extra cost to you 🙂. I appreciate you supporting my channel so I can continue providing you with free software development content!
#coding #programming #developer

Наука

Опубликовано:

 

24 май 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 74   
@olter1000
@olter1000 Месяц назад
Thank you very much. You stopped me from overengineering and solving problems which doesn't exist for now in my startup.
@thabangmotaung9637
@thabangmotaung9637 8 месяцев назад
The structure of your content delivery makes it easy for me to understand these concepts in a snap.
@alexhyettdev
@alexhyettdev 8 месяцев назад
That's awesome, I am glad to hear it!
@Nicetrycutiepie
@Nicetrycutiepie Месяц назад
great in detail explanation. thank you so much Alex.
@puliranjit
@puliranjit 11 месяцев назад
Love your learning videos ..well-structured , short and to the point
@alexhyettdev
@alexhyettdev 11 месяцев назад
Thank you! I am glad you like them!
@yourownazog8069
@yourownazog8069 29 дней назад
amazing content and the level of my production. Thanks for what your doing
@vijayas8007
@vijayas8007 5 месяцев назад
Wow Alex very well explained .. I went through many videos finally i got the difference as I come back from a break in my IT career. Thanks looking forward for more of such. Do you have anything on API manager
@MaximePoulain
@MaximePoulain 10 месяцев назад
A topic that could be interesting to delve further into is the Modular Monolith. In contrast to microservices where the boundary is just physical, modules in a monolith are logically isolated from each other. This brings benefits like faster deployment and helps avoid issues of creating 'spaghetti code' that could cause problems for others. However, designing a modular monolith can be challenging, as it requires expertise in the design of your domain and the identification of its sub-domains (bounded context in DDD terminology) but also with the communication when an operation span accross multiple modules. Overall, I believe this approach combines the pros and cons of both monolith and microservices architectures effectively for many use cases.
@hyper_channel
@hyper_channel 8 месяцев назад
This right here is my go to. A monolith where the different services / features can be extracted as a microservice if needed, (usually those hurting for resources / performance). Microservices just have too much overhead and moving parts to make sense as the starting point without a very good reason.
@cflowlastname548
@cflowlastname548 6 месяцев назад
Before the Microservice hype, these system were just called modular systems. I actually wrote one myself based on my own intuition and experience. It was not until a couple of years later when I saw the word "Modular monoliths" in my youtube feeds I realized there was an exact word for what I had done.
@Ramin_Esfandiari
@Ramin_Esfandiari 9 месяцев назад
Very well done and concise video. Thank you.
@alexhyettdev
@alexhyettdev 9 месяцев назад
Thank you 🙏
@halooshka1904
@halooshka1904 8 месяцев назад
love the explanation! Very easy to understand :) Thank you
@alexhyettdev
@alexhyettdev 8 месяцев назад
I am glad you liked it! Thanks for commenting.
@resistance_tn
@resistance_tn 10 месяцев назад
This is high quality work thank you ! Would love to see more advanced topics on networks or protocols or anything related to backed ! Keep up the great work :)
@alexhyettdev
@alexhyettdev 10 месяцев назад
Thank you! Yes I will be definitely be covering more backend topics.
@rmanjit
@rmanjit 10 месяцев назад
Great work !! This is high quality content !!
@alexhyettdev
@alexhyettdev 10 месяцев назад
Thank you!
@geybriyel2416
@geybriyel2416 Месяц назад
this is very clear. thank you
@gabrielnzete8913
@gabrielnzete8913 17 дней назад
Fantastically explained
@xiiEJRAM
@xiiEJRAM Год назад
Your videos quality and the content you made are epic , I really love your channel 👌🏻
@alexhyettdev
@alexhyettdev Год назад
Thank you very much!
@franciscodevia7446
@franciscodevia7446 Год назад
Ñ😊ñññ😊ññññ😊ññññññ😊😊😊😊
@franciscodevia7446
@franciscodevia7446 Год назад
00pp0p00pppp0pp0ppppp0ppppp0pp0ppppppppppppppp0ppppppp
@edvwe
@edvwe Год назад
Very informational, thanks
@alexhyettdev
@alexhyettdev Год назад
Thanks Marcin, I am glad you liked it!
@yankluf
@yankluf 7 месяцев назад
Sooo clear!! Thanks a lot! 😁
@alexhyettdev
@alexhyettdev 7 месяцев назад
You're welcome 😊
@abelmillion4341
@abelmillion4341 8 месяцев назад
Good Job man, am grateful for your videos
@alexhyettdev
@alexhyettdev 8 месяцев назад
Thank you! I am glad they are useful for you.
@user-se8hw9kn3m
@user-se8hw9kn3m 8 месяцев назад
this is such a gold content. Thank you so much Alex
@alexhyettdev
@alexhyettdev 8 месяцев назад
You're welcome, thank you for commenting!
@muhammadwaqasiqbal8243
@muhammadwaqasiqbal8243 5 месяцев назад
Hi there Alex, Lovely video and It has cleared a lot of misconceptions regarding both architectures, I have a question however, Is there any metric value or any parameters defined based on which we could choose one or the other? I would really appreciate your take on this. Thanks
@imanshirkhodaee1704
@imanshirkhodaee1704 7 месяцев назад
This is a very helpful content. thanks a lot.
@alexhyettdev
@alexhyettdev 7 месяцев назад
You're very welcome!
@sosyalant
@sosyalant 11 месяцев назад
you deserve more subs. Fantastic job
@alexhyettdev
@alexhyettdev 11 месяцев назад
Thank you! Hopefully one day!
@fahadaslamtanoli
@fahadaslamtanoli 6 месяцев назад
very good explanation can you explain when to use service endpoint or service bus
@korniszon68
@korniszon68 9 месяцев назад
Wow, can't belive you have that little views. It's very nice told, all the pros and cons. You really know this stuff well. I always ask this question on the interviews and it appears that it's not that clear to most of devs :(
@alexhyettdev
@alexhyettdev 9 месяцев назад
Thank you! Yes unfortunately useful videos on software development don't always get as many views as other topics. Maybe I should do a series on topics to learn before going for an interview!
@user-cc3pd5wl9e
@user-cc3pd5wl9e 2 дня назад
This is just perfect
@joeddo
@joeddo 3 месяца назад
great video. ty
@faizanahmed9304
@faizanahmed9304 Год назад
amazing video
@alexhyettdev
@alexhyettdev Год назад
Thanks I am glad you though so!
@joan.paucar
@joan.paucar 2 месяца назад
What do you think about tools like TurboRepo ? I mean, we can use that tool for our apps minimizing the disadvantages of monoliths ?
@amitev
@amitev Год назад
Great content and great video quality! What microphone are you using?
@alexhyettdev
@alexhyettdev Год назад
Thank you, I am using a Blue Yeti X. I have had the same microphone for all of my videos but the sound quality wasn't as good to start with. The key is to have the microphone as close as possible and to make sure you have lots of soft furnishings in your room to absorb any echos. I now have curtains, cushions, a rug and a fluffy blanket to absorb the sound. Video wise I am just using my iPhone XR with the OBS Camera app. My earlier videos used a Logitech Brio 4K but the colours were always a bit off.
@amitev
@amitev Год назад
@@alexhyettdev thank you very much for the comprehensive answer! Ideas for next videos - how to manage complexity; how to manage work/technical debt in a huge legacy code base, hope to cope with toxic cowerks/arrogant seniors.
@alexhyettdev
@alexhyettdev Год назад
Thanks for the ideas, I will add them to my backlog!
@vktop2
@vktop2 Год назад
Nice video, I have a question, for example in a system I have a microservice customer and this service will have in its database a table with the types of customer document, in this system could also exist a microservice user and could also have in its database a table type of user document, in this case how to work these data that concern several microservices since the types of documents are common between both entities; should I create 2 tables document type 1 in each microservice? Thank you
@alexhyettdev
@alexhyettdev Год назад
Microservices should always have their own database. If you have data that is common between them, then you can have copies of the same data in each database. Not ideal, but it is quite common practice. Each domain only stores the data they are interested in. One option for you would be to have a document microservice that all the other microservices use for file storage. This is particular useful when you have strict requirements such as encryption or access restrictions that you need to adhere to. It can all be done in one place without needing the same logic in every microservice that needs to store documents.
@Venkatesh-vm4ll
@Venkatesh-vm4ll 7 месяцев назад
Really thank you for the word , start business with monolithic, i am confused in that
@alexhyettdev
@alexhyettdev 7 месяцев назад
Microservices are usually a bit overkill if you are starting out with a new application with no traffic. In these cases one big application (monolith) is usually better until you have scaling problems and need to split it up.
@elifantshoos708
@elifantshoos708 Месяц назад
Dying. The stock footage of code magically getting manifested on the scenes as the person is waving around their finger. LOL
@anjanigente4538
@anjanigente4538 3 месяца назад
can one microservice depend on the other? and also is it necessary to have separate database for each microservice?
@vishalkarthik.v7209
@vishalkarthik.v7209 6 месяцев назад
Hello Mr.Alex if there are multiple application and we use monolith then should we use one single piece of code or respective codes for respective application Thank you !
@alexhyettdev
@alexhyettdev 6 месяцев назад
Generally with monoliths we are talking about one single application but in some cases you can have smaller supporting applications that go with it. I prefer to do one git repository per application but in the case of microservices that are closely related it can be easier to just have a mono repo.
@david2am
@david2am 6 месяцев назад
thanks!
@alexhyettdev
@alexhyettdev 6 месяцев назад
You’re welcome!
@ITSolutions-bl3dp
@ITSolutions-bl3dp Месяц назад
Thanks ❤sir
@aminzuar5767
@aminzuar5767 Год назад
Thank uuuuu 🙏🙏🙏
@alexhyettdev
@alexhyettdev Год назад
You’re welcome, I am glad it was helpful.
@mumasmusic
@mumasmusic 8 месяцев назад
Great work! One small suggestion tho. The constant bg music is quite distracting.
@alexhyettdev
@alexhyettdev 8 месяцев назад
Sorry about that. I have turned it down a lot in my newer videos. I would get rid of it completely, but it seems to improve retention.
@BenRangel
@BenRangel 2 месяца назад
The distinction is too blunt for my taste: i view microservices as one team separating their work into more than one service despite not really having to. And monoliths being a big service used by multiple teams. But most use something in between: pretty much one service per team
@marcocoratella1556
@marcocoratella1556 2 месяца назад
In fact the handsome developers, that want absolutely to show how handsome they are, they say that microservices is amazing. But indeed you need to be pragmatic and really understand what means working as a software developer sometimes first of all
@kasparsr
@kasparsr 3 месяца назад
modular modulyth
@xConundrumx
@xConundrumx 8 месяцев назад
I almost could not disagree more on these advantages you claim Monoliths have. Mostly because in reality nothing ever remains even remotely small enough for those advantages still hold up. Every single 'monolith' I have worked on in my 30 years turned out to be a massive app before it got to production. And that was with all the trimmings of those times. And you always, ALWAYS en up with a mess when multiple people have to work on it. Just my 2 cents.
@alexhyettdev
@alexhyettdev 8 месяцев назад
It really does depend on the scope of the application. If you have a team of 8 working on big enterprise application that you know is going to end up quite large then just start with microservices or at least mini monoliths. If you are building your own startup with just 1 or 2 developers, and you are not building into an existing architecture then a monolith will always be quicker. It is a case of not solving for problems you are not even sure you will have.
@kimberlyjacobsen4148
@kimberlyjacobsen4148 6 месяцев назад
No changes to Email service ? ? After changes to Azure and Outlook we now need To use 2-factor Auth.. thus Breaking the SMTP login. Add new Endpoints for MS and a Gui so we can authorize the Token. blah blah Point .. NO microservice is Imune to changes
@alexhyettdev
@alexhyettdev 6 месяцев назад
Very true. You would hope something as simple as email would be immune but very much depends on the provider. I have a few very simple Lambda functions that haven't touched in 2 years, however I am now forced to update them as the version of node they are running on will not be support soon.
@giorgikhachidze64
@giorgikhachidze64 Месяц назад
Service mesh wasn't explained clearly at all. Too vague.
@jonny.rubber
@jonny.rubber 3 месяца назад
I feel the ping is unaccairy
Далее
Microservices explained - the What, Why and How?
18:30
Просмотров 792 тыс.
Domain Driven Design: What You Need To Know
8:42
Просмотров 89 тыс.
Неадекватная стюардесса
01:00
Просмотров 843 тыс.
Event-Driven Architecture: Explained in 7 Minutes!
7:18
How Senior Programmers ACTUALLY Write Code
13:37
Просмотров 1,3 млн
5 Design Patterns That Are ACTUALLY Used By Developers
9:27
Stack vs Heap Memory - Simple Explanation
5:28
Просмотров 180 тыс.
3D printed Nintendo Switch Game Carousel
0:14
Просмотров 4,2 млн