microservices - gigacon › wp-content › uploads › 2017 › 03 › ziomek_krzys… · testing:...

Post on 24-Jun-2020

0 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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

top related