Added Service Mesh & ACID Cap Theorem (#1918)

* Architect Responsibilities

* 104 - Service Mesh

* 104 - Acid Cap Theroem

* gRPC

* Update content/roadmaps/114-software-architect/content/105-patterns-and-design-principles/104-acid-cap-theorem.md

Co-authored-by: Kamran Ahmed <kamranahmed.se@gmail.com>
pull/1930/head
Kodey Thomas 2 years ago committed by GitHub
parent bf618cf27a
commit 59f6574a1c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 2
      content/roadmaps/114-software-architect/content/101-architect-responsibilities.md
  2. 16
      content/roadmaps/114-software-architect/content/105-patterns-and-design-principles/104-acid-cap-theorem.md
  3. 14
      content/roadmaps/114-software-architect/content/110-apis-and-integrations/100-grpc.md
  4. 9
      content/roadmaps/114-software-architect/content/115-operations-knowledge/104-service-mesh.md

@ -10,6 +10,8 @@ To understand the necessary skills an architect needs, we first need to understa
* Check and review architecture and code, e.g., check if defined patterns and coding standards are implemented properly * Check and review architecture and code, e.g., check if defined patterns and coding standards are implemented properly
* Collaborate with other architects and stakeholders * Collaborate with other architects and stakeholders
* Coach and consult developers * Coach and consult developers
* Make sure that as implementation takes place, the architecture is being adhered to
* Play a key part in reviewing code
* Detail out and refine higher level design into lower level design * Detail out and refine higher level design into lower level design
_Note: Architecture is a continuous activity, especially when it is applied in agile software development. Therefore, these activities are done over and over again._ _Note: Architecture is a continuous activity, especially when it is applied in agile software development. Therefore, these activities are done over and over again._

@ -1 +1,15 @@
# Acid cap theorem # ACID & CAP Theorem
ACID (Atomicity, Consistency, Isolation, Durability) and CAP (Consistency, Availability, Partition Tolerance) are essential concepts in distributed systems. They are often used to explain the trade-offs between consistency and availability.
CAP is an acronym for Consistency, Availability, and Partition Tolerance. According to the CAP theorem, any distributed system can only guarantee two of the three properties at any time. You can't guarantee all three properties at once.
ACID is an acronym that stands for Atomicity, Consistency, Isolation, Durability. ACID is a set of properties of database transactions intended to guarantee validity even in the event of errors, power failures, etc.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.bmc.com/blogs/cap-theorem/'>What is CAP Theorem?</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://en.wikipedia.org/wiki/CAP_theorem'>CAP Theorem - Wikipedia</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://mwhittaker.github.io/blog/an_illustrated_proof_of_the_cap_theorem/'>An Illustrated Proof of the CAP Theorem</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.ibm.com/uk-en/cloud/learn/cap-theorem'>CAP Theorem and it's applications in NoSQL Databases</BadgeLink>
<BadgeLink colorScheme='purple' badgeText='Watch' href='https://www.youtube.com/watch?v=_RbsFXWRZ10'>What is CAP Theorem?</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://en.wikipedia.org/wiki/ACID'>ACID - Wikipedia</BadgeLink>

@ -1 +1,13 @@
# Grpc # gPRC
gRPC is a platform agnostic serialization protocol that is used to communicate between services. Designed by Google in 2015, it is a modern alternative to REST APIs. It is a binary protocol that uses HTTP/2 as a transport layer. It is a high performance, open source, general-purpose RPC framework that puts mobile and HTTP/2 first.
It's main use case is for communication between two different languages within the same application. You can use Python to communicate with Go, or Java to communicate with C#.
gRPC uses the protocol buffer language to define the structure of the data that is
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://grpc.io/'>gRPC Website</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://grpc.io/docs/what-is-grpc/introduction/'>gRPC Introduction</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://grpc.io/docs/what-is-grpc/core-concepts/'>gRPC Core Concepts</BadgeLink>
<BadgeLink badgeText='Watch' href='https://youtu.be/XRXTsQwyZSU'>Stephane Maarek - gRPC Introduction</BadgeLink>

@ -1 +1,8 @@
# Service mesh # Service Mesh
A Service Mesh is a dedicated infrastructure layer for handling service-to-service communication. It’s responsible for the reliable delivery of requests through the complex topology of services that comprise a modern, cloud native application. In layman's terms, it's a tool which helps you to control how different services communicate with each other.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink badgeText='Watch' href='https://youtu.be/16fgzklcF7Y'>Service Mesh explained in 15 Minutes</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.redhat.com/en/topics/microservices/what-is-a-service-mesh'>Red Hat - What is a Service Mesh?</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://platform9.com/blog/kubernetes-service-mesh-a-comparison-of-istio-linkerd-and-consul/'>Kubernetes Service Mesh - Blog Post</BadgeLink>
Loading…
Cancel
Save