In today's fast-paced software development world, microservices architecture has become a hot topic, offering new possibilities for designing complex systems. This master's thesis dives into microservices design, driven by the author's curiosity and desire to understand how modern software is built. Coming from a background working with traditional monolithic systems, the author is eager to explore the differences between these systems and the more agile microservices approach. The author's hands-on experience with microservices provides a practical perspective and a deep understanding of the challenges and benefits of this approach. By studying how services are broken down, how interfaces are designed, and how systems communicate, the author aims to provide practical insights for software developers. Through a mix of research and hands-on experiments, this thesis aims to demystify the complexities of microservices design. It offers guidance for those looking to adopt this approach in their projects. By sharing lessons learned and best practices, the author hopes to empower others in the software development community to embrace the benefits of microservices architecture. As technology evolves, this thesis serves as a roadmap for navigating the exciting world of microservices, helping developers build more flexible and scalable software systems. By distilling complex concepts into actionable advice, this research aims to make the journey into microservices design less daunting and more rewarding.
V dnešním rychle se vyvíjejícím světě vývoje softwaru se architektura mikroslužeb stala žhavým tématem, které nabízí nové možnosti pro návrh složitých systémů. Tato diplomová práce se ponořuje do návrhu mikroslužeb, poháněna zvědavostí a touhou autorky pochopit, jak se vytváří moderní software. Autorka, která má zkušenosti s prací na tradičních monolitických systémech, je nadšená z prozkoumání rozdílů mezi těmito systémy a agilnějším přístupem mikroslužeb. Autorkina praktická zkušenost s mikroslužbami poskytuje praktický pohled a hluboké porozumění výzevám a výhodám tohoto přístupu. Studiem toho, jak se služby rozdělují, jak se navrhují rozhraní a jak systémy komunikují, autorka se snaží poskytnout praktické poznatky pro vývojáře softwaru. Prostřednictvím kombinace výzkumu a praktických experimentů se tato práce snaží odhalit složitosti návrhu mikroslužeb. Nabízí vedení pro ty, kteří chtějí tento přístup přijmout ve svých projektech. Sdílením zkušeností a osvědčených postupů autorka doufá, že posílí ostatní v komunitě vývojářů softwaru, aby přijali výhody architektury mikroslužeb. Jak se technologie vyvíjí, tato práce slouží jako roadmapa pro navigaci v vzrušujícím světě mikroslužeb, která pomáhá vývojářům vytvářet flexibilnější a škálovatelnější softwarové systémy. Destilací složitých konceptů do praktických rad se tato práce snaží učinit cestu do návrhu mikroslužeb méně náročnou a více odměňující.