Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
MicroservicesCloud Computing
Monolith vs Microservices
Scalability: Monolith vs Microservices
How big is a Microservice?
a) It Dependsb) ~438 square metersc) No bigger than my head
Rule 1: “Small enough to fit in your head”Rule 2: Two-pizza team
Web Services and Cloud Computing
Microservices and SOA
Microservices and Cloud Computing
Conway’s Law
Any organization that designs a system (defined broadly)
will produce a design whose structure is a copy of
the organization's communication structure.
Conway’s Law
Conway’s Law
Which technology?
Spring Boot
Spring Cloud
Cargo Cult
Cargo Cult
Gain
▶ Scalability: Next level of scalability. Selectively deploy more instances of services which need more throughput.
▶ Separation of Concerns: Microservices matching context boundaries reinforce Separation of Concerns principle.
▶ Encapsulation: Related data and logic encapsulated with well defined API.
▶ Lower complexity at Application Level: Smaller modules are easier to develop, refactor and maintain.
▶ Testing: Shorter tests execution time encourages developer to run them more often, especially before committing. Faster feedback from CI environment.
▶ Technology: Microservices are not restricted to be implemented in the same technology.
▶ Increased isolation of data: One database assigned to one microservice.
▶ Deployment flexibility: Fine grained independent deployments.
▶ Ownership: One two-pizza team takes responsibility for microservice as a whole.
Pain
▶ Context boundaries: context boundaries might be vague by the time domain is well understood. Unclear boundaries may lead to future refactoring between components which is more costly in distributed system than monolith.
▶ Distributed computing: higher complexity at integration layer and fallacies of distributed computing.
▶ Eventual consistency of data: risk of data inconsistency because of decentralized database management.
▶ Decreased productivity in the beginning: There is a lot of overhead in distributed systems. Microservices Architecture is investment in future productivity.
▶ Operational complexity: challenges for operational team. Management and monitoring of vast network of microservices.
You must be this tall…
AWS: VPN Connection
AWS: On-premises vs Cloud
Transfer datacenter to AWS
Snowball =80 Terabyte = 80 *1000 GB
10 snowmobiles =Exabyte = 1000 * Petabyte = 1 billion GB
1 snowmobile = 100 Petabyte = 100 * 1000 Terabyte
Snowmobile = 1250 * Snowball
Snowball Selfies
References
▶ https://www.linkedin.com/pulse/microservices-pain-gain-krzysztof-ziomek
▶ https://martinfowler.com/articles/microservices.html
▶ http://www.service-architecture.com/articles/cloud-computing/web_services_and_cloud_computing.html
▶ http://www.imotif.net/index.php/2016/10/06/microservice/
▶ https://blog.hackerrank.com/which-country-would-win-in-the-programming-olympics/