Skip to content

Commit 364a587

Browse files
committed
_
SLA, SLO, and SLI Space-Based Architecture (SBA) vs Cell-based architecture AWS, Azure, GCP in cloud network, Azure Cloud resources, Other Topics, toc
1 parent 4d4e386 commit 364a587

File tree

1 file changed

+111
-14
lines changed

1 file changed

+111
-14
lines changed

README.md

Lines changed: 111 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,22 @@
1-
# Software Architecture Mindmap
1+
# Table of Contents
2+
3+
- **Section 1**: [Software Architecture Mindmap](#software-architecture-mindmap)
4+
- **Section 2**: [Software Architecture Reference](#software-architecture-reference)
5+
- [Cloud Architecture](#cloud-architecture)
6+
- [Computer Science courses](#computer-science-courses)
7+
- [Industry Trends](#industry-trends)
8+
- [Newsletter](#newsletter) / [Tools](#tools)
9+
- [Engineering blog](#engineering-blog)
10+
- [Computer Science Books](#computer-science-books)
11+
- **Section 3**: [Computer Science Papers](#computer-science-papers)
12+
- [Computer Science Papers Every Developers Should Read](#computer-science-papers-every-developers-should-read)
13+
- [Distributed Systems!](#distributed-systems)
14+
- [25 Papers That Completely Transformed the Computer World](#25-papers-that-completely-transformed-the-computer-world)
15+
- **Section 4**: [Data Science (ML/NN)](#data-science-mlnn)
16+
- [Free e-books](#30-free-e-books) / [GitHub](#github)
17+
- **Section 5**: [Terminology and Comparisons](#terminology-and-comparisons)
18+
19+
## Software Architecture Mindmap
220

321
Software terminologies and concepts, software architecture overview
422

@@ -65,9 +83,9 @@ This mindmap created by `https://app.mindmapmaker.org/`
6583
🔹 `Saturation` is the ability of your application to use the available CPU and Memory
6684

6785
</details>
68-
- [InfoQ minibooks](https://www.infoq.com/minibooks/): Architectures You’ve Always Wondered About .. [2021](./files/minibooks/AYAWA-2021-1635782607730.pdf) / [2023](./files/minibooks/AYAWA-2023-1685636455618.pdf) / [2024](./files/minibooks/AYAWA-2024-1712241257109.pdf)
86+
- [InfoQ minibooks](https://www.infoq.com/minibooks/): Architectures You’ve Always Wondered About .. [2021](./files/minibooks/AYAWA-2021-1635782607730.pdf) / [2023](./files/minibooks/AYAWA-2023-1685636455618.pdf) / [2024](./files/minibooks/AYAWA-2024-1712241257109.pdf) / [Cell-Based Architecture](https://www.infoq.com/minibooks/cell-based-architecture-2024)
6987

70-
## Cloud Architecture
88+
### Cloud Architecture
7189

7290
- [AWS to Azure services comparison](https://learn.microsoft.com/en-us/azure/architecture/aws-professional/services)
7391
- [Google Cloud to Azure services comparison](https://learn.microsoft.com/en-us/azure/architecture/gcp-professional/services)
@@ -79,46 +97,47 @@ This mindmap created by `https://app.mindmapmaker.org/`
7997
- [Best practices in cloud applications](https://learn.microsoft.com/en-us/azure/architecture/best-practices/index-best-practices)
8098
- [Cloud Design Patterns](https://learn.microsoft.com/en-us/azure/architecture/patterns/)
8199
- [Landing zone](https://learn.microsoft.com/en-us/azure/architecture/landing-zones/azure-virtual-desktop/design-guide?tabs=baseline)
100+
- [Resources for architects and developers of multitenant solutions](https://learn.microsoft.com/en-us/azure/architecture/guide/multitenant/related-resources)
101+
- [Data partitioning strategies](https://learn.microsoft.com/en-us/azure/architecture/best-practices/data-partitioning-strategies)
82102

83-
<details>
103+
<details>
84104
<summary>Expand</summary>
85105

86106
🔹 Abstractly speaking, a landing zone helps you plan for and design an Azure deployment, by conceptualizing a designated area for placement and integration of resources.
87-
107+
88108
There are two types of landing zones:
89-
109+
90110
1. `platform landing zone`: provides centralized enterprise-scale foundational services for workloads and applications.
91111
2. `application landing zone`: provides services specific to an application or workload.
112+
</details>
92113

93-
</details>
94-
95-
## Computer Science courses
114+
### Computer Science courses
96115

97116
- [Kaggle Solutions and Ideas](https://github.com/faridrashidi/kaggle-solutions): Collection of Kaggle Solutions and Ideas
98117
- [Best-of Machine Learning with Python](https://github.com/ml-tooling/best-of-ml-python): A ranked list of awesome machine learning Python libraries. Updated weekly.
99118
- [freeCodeCamp](https://www.freecodecamp.org): Learn to code for free. [youtube](https://www.youtube.com/freecodecamp)
100119
- [Ultimate Collection of 60 YouTube Courses for 21 Programming Languages](https://dev.to/arjuncodess/ultimate-collection-of-60-youtube-courses-for-21-programming-languages-mega-list-47b5)
101120
- [Computer Science courses with video lectures](https://github.com/Developer-Y/cs-video-courses)
102121

103-
## Industry Trends
122+
### Industry Trends
104123

105124
- [Software Industry Statistics](https://www.statista.com/markets/418/topic/484/software/#overview): Statista Industry Insight
106125
- [Gartner Top Strategic Technology Trends 2024](https://www.gartner.com/en/articles/gartner-top-10-strategic-technology-trends-for-2024)
107126
- [MAD (ML/AI/Data) Landscape](https://mad.firstmark.com/)
108127

109-
## Newsletter
128+
### Newsletter
110129

111130
- [Substack Leaderboard](https://substack.com/browse/technology): Newsletter
112131

113-
## Tools
132+
### Tools
114133

115134
- [Algorithm Visualizer](https://github.com/algorithm-visualizer/algorithm-visualizer): Interactive Online Platform that Visualizes Algorithms from Code
116135
- [Best Kubernetes Tools](https://bluelight.co/blog/best-kubernetes-tools): Bluelight Consulting
117136
- [Power BI DAX Patterns](https://www.daxpatterns.com/patterns/)
118137
- [OOP Design Patterns](https://refactoring.guru/design-patterns)
119138
- [Data Engineering Wiki](https://dataengineering.wiki/Index)
120139

121-
## Engineering blog
140+
### Engineering blog
122141

123142
- [AWS Architecture Blog](https://aws.amazon.com/blogs/architecture/)
124143
- [Azure Architecture Blog](https://techcommunity.microsoft.com/t5/azure-architecture-blog/bg-p/AzureArchitectureBlog)
@@ -133,8 +152,13 @@ This mindmap created by `https://app.mindmapmaker.org/`
133152
- [Slack Engineering](https://slack.engineering/)
134153
- [79 Engineering Blogs To Level Up Your System Design Skills](https://blog.bytebytego.com/p/79-engineering-blogs-to-level-up)
135154

155+
### Other Topics
136156

137-
## Computer Science Books
157+
- [How to Architect Software for a Greener Future](https://www.infoq.com/articles/architect-software-for-greener-future)
158+
- [Generative Search: Practical Advice for Retrieval Augmented Generation (RAG)](https://www.infoq.com/presentations/vector-embedding-llm/)
159+
- [What are the Greenest Programing Languages?](https://datasciencelearningcenter.substack.com/p/what-are-the-greenest-software-programming)
160+
161+
### Computer Science Books
138162

139163
1. General
140164
- The Pragmatic Programmer by David Thomas and Andrew Hunt
@@ -280,6 +304,7 @@ This mindmap created by `https://app.mindmapmaker.org/`
280304
1. [Machine Learning Interview Guide](https://github.com/Sroy20/machine-learning-interview-guide)
281305
1. [Awesome Production Machine Learning](https://github.com/EthicalML/awesome-production-machine-learning)
282306
1. [365 Data Science Flashcards](https://365datascience.com/flashcards/)
307+
1. [Virgilio](https://github.com/virgili0/Virgilio) / [Python Data Science Handbook](https://github.com/jakevdp/PythonDataScienceHandbook) / [Microsoft: 10 Weeks, 20 Lessons, Data Science](https://github.com/microsoft/Data-Science-For-Beginners) / [Data science Python notebooks](https://github.com/donnemartin/data-science-ipython-notebooks) / [📚 Papers & tech blog](https://github.com/eugeneyan/applied-ml) / [Open Source Data Science Masters](https://github.com/datasciencemasters/go) / [Awesome Data Science](https://github.com/academic/awesome-datascience) / [Data science interview questions and answers](https://github.com/alexeygrigorev/data-science-interviews) / [free self-taught education in Data Science!](https://github.com/ossu/data-science) / [data science project template](https://github.com/drivendataorg/cookiecutter-data-science)
283308

284309
- [ref](https://newsletter.theaiedge.io/p/30-free-machine-learning-e-books)
285310

@@ -658,4 +683,76 @@ This mindmap created by `https://app.mindmapmaker.org/`
658683
659684
🔹Alpha/Beta Testing: 🔹Alpha: Initial testing performed by internal staff / 🔹Beta: Testing performed by actual users
660685
686+
</details>
687+
688+
1. SLA, SLO, and SLI
689+
690+
<details>
691+
<summary>Expand</summary>
692+
693+
🔹SLA (Service Level Agreement): A contract defining the expected level of service. `99.9% uptime`
694+
695+
🔹SLO (Service Level Objective): A measure of service performance agreed upon in an SLA. `200ms response`
696+
697+
🔹SLI (Service Level Indicator): A quantitative measure of a specific aspect of the level of service. `Query latency`
698+
699+
</details>
700+
701+
1. Space-Based Architecture (SBA) vs Cell-based architecture
702+
- Space-Based Architecture (SBA): Removing the database and instead using a shared memory (memory grids) model
703+
- Cell-based architecture: multiple isolated workload instances (cells) for fault isolation and handling subsets of workload requests
704+
705+
1. Azure vs AWS vs GCP in Cloud Netwrok
706+
707+
<details>
708+
<summary>Expand</summary>
709+
710+
🔹**Cloud Network Structures:**
711+
712+
- **AWS:** region → VPC → availability zone → subnet (public, private)
713+
- **Azure:** region → VNet → availability zone → subnet
714+
- **GCP:** global → VPC → subnet (region-specific)
715+
716+
🔹**Traffic Between VNet or VPC:**
717+
718+
- Set up a VNet or VPC gateway and configure the routing table.
719+
- **Azure:** One VPN gateway per virtual network, supporting external and on-premise connectivity.
720+
- **Azure:** Routing tables can be assigned at the subnet level.
721+
- **AWS:** Routing tables are associated at the VPC level, determining traffic between subnets.
722+
- **GCP:** Routing tables are associated with the VPC, not the subnet. Routes are determined by subnet CIDR ranges.
723+
724+
🔹**Regional Traffic:**
725+
- Use peering for traffic between VNets or VPCs in the same region.
726+
- Peering provides lower latency, higher bandwidth, and reduced costs compared to gateways
727+
728+
🔹**Hybrid Connectivity:**
729+
- Required for on-premise networks to connect to cloud networks.
730+
- Services used: Azure ExpressRoute, AWS Direct Connect, GCP Cloud Interconnect.
731+
732+
🔹**Connectivity Scenario**
733+
734+
| Connectivity Scenario | AWS | Azure | GCP |
735+
|---------------------------|------------------------------------------------------|----------------------------------------------------|---------------------------------------------------|
736+
| VPC (VNet) <-> VPC (VNet) | VPC Peering, AWS Transit Gateway | VNet Peering, Azure Virtual WAN, VNet Gateway | VPC Network Peering, Cloud VPN |
737+
| On-Premise <-> VPC (VNet) | Virtual Private Gateway, AWS Direct Connect, AWS Transit Gateway | VPN Gateway, Azure ExpressRoute, Azure Virtual WAN | Cloud VPN, Cloud Interconnect |
738+
| VNet (VPC) <-> Internet | Internet Gateway (public subnet), NAT Gateway (private subnet) | Internet Gateway, NAT Gateway | Cloud Router, Cloud NAT |
739+
| Subnet Traffic Control | Network Access Control Lists (ACLs) | Network Security Groups (NSGs) | 1. Shared VPC (XPN) subnets and set permissions at project or subnet level 2. Firewall Rules (VM level). |
740+
741+
- In Azure, the equivalent of AWS Transit Gateway is Azure Virtual WAN
742+
- Azure and GCP don’t have a direct concept of public and private subnets like AWS.
743+
- An Azure Virtual Network (VNet) Gateway can serve as a VPN gateway or an ExpressRoute gateway. Site-to-Site, Point-to-Site, and VNet-to-VNet connections all use a VPN gateway.
744+
- Point-to-site: Individual device to network.
745+
- Site-to-site: Network to network.
746+
- Private IP vs Public IP: `192.168.1.4` (not routable on the internet) vs `34.207.152.137`
747+
748+
🔹**Resource hierarchy**
749+
750+
| Level | AWS | Azure | GCP |
751+
|------------------------|----------------------|---------------------|-------------|
752+
| 1 | Organization | Management Group | Organization|
753+
| 2 | Organizational Unit (OU) | Subscription | Folder |
754+
| 3 | Account | Resource Group | Project |
755+
| 4 | Resources | Resources | Resources |
756+
757+
661758
</details>

0 commit comments

Comments
 (0)