Uploaded by Micah Gant

microservices (1)

advertisement
Microservices for
Massive Software
(Chapter 6 - Sommerville)
Unit Testing
Multicomponent
Monolith
Refactoring
Advantages
Choreography
Multi-component
Microservices excel at splitting
components up into independent
functions and programs that will not
require the entire service to be
changed when a single module
needs to change
Disadvantages
Unit Testing
By making every microservice
independent from one another, it
becomes much simpler to test a
single aspect of a program. There's
no longer the hassle of separating
services that are deeply connected
Monolith Refactoring
Advantages
Monoliths are the traditional way of
creating programs. These rely on
heavily-connected and dependent
modules that lacks scalability in
most cases
-Massively scalable
-Little to no dependency on other
microservices
-Can exist on a small scale too
-Independency theoretically allows
for optimal use of agile methods
Choreography
Why command every aspect when
each service can handle itself?
Choreography gives a pattern to
each microservice to follow
independently
Disadvantages
-Scalable, but just as much complex
-Conversion from a macroservice is
extremely difficult.
-Not always needed, and sometimes
dependency is a desirable trait.
-Essentially, a microservice acts as its
name implies. It serves as a microscaled function of some large
program.
-A good analogy would be something
like creating classes within code,
where certain subtasks are given to
an individual entity where it makes
the most sense.
-The decoupling of structures helps
retain productivity within expanded
structures, where monoliths generally
fall apart. As emphasized via the
image below
Martin Fowler
References:
1. Vera-Rivera, F. H., Gaona, C., & Astudillo, H. (2021, September 8). Defining and measuring microservice granularity-a literature overview. PeerJ. Computer science. Retrieved December 7, 2022, from
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8444086/
2. Li, K., Ding, Y., Shi, Y., Wang, L., & Zhen, Z. (2020, August 1). Research and application of high-performance data storage and Transmission Technology in Microservice Environment. ResearchGate. Retrieved December 8, 2022, from
https://www.researchgate.net/publication/343811700_Research_and_Application_of_High-Performance_Data_Storage_and_Transmission_Technology_in_Microservice_Environment
3.Auer, F., Lenarduzzi, V., Felderer, M., & Taibi, D. (2021, April 30). From Monolithic Systems to microservices: An assessment framework. Information and Software Technology. Retrieved December 7, 2022, from
https://www.sciencedirect.com/science/article/pii/S0950584921000793
4.Syed, T. A., Long, J., Khatri, V., & Khuhro, M. (2021, January 13). An approach to break down a monolithic app into microservices. ResearchGate. Retrieved December 8, 2022, from
https://www.researchgate.net/publication/353220480_An_Approach_to_Break_Down_a_Monolithic_App_into_Microservices
Download