An open API service indexing awesome lists of open source software.

https://github.com/jwalsh/aws-architecture-decomposition-lab

System designs for Amazon Web Services (AWS) hands-on projects
https://github.com/jwalsh/aws-architecture-decomposition-lab

architecture aws aws-services cloud-architecture diagrams infrastructure mermaid reference-architecture system-design

Last synced: 4 months ago
JSON representation

System designs for Amazon Web Services (AWS) hands-on projects

Awesome Lists containing this project

README

          

* AWS Architecture Decomposition Lab
#+CREATOR: Jason Walsh
#+PROPERTY: header-args :eval never-export
#+OPTIONS: toc:2

This repository focuses on decomposing system designs for Amazon Web Services (AWS) hands-on projects, providing practical experience with AWS use cases.

** Learning Objectives

- Decompose system designs for WAC
- Explore key AWS services and their interactions
- Understanding how different AWS services interact in real-world scenarios
- Implementing serverless, machine learning, content delivery, and data processing architectures
- Visualizing architectures using Mermaid diagrams
- Explore scalability, performance, and security considerations
- Gain hands-on experience with AWS
- Implement literate programming practices using org-mode and babel

** References

- https://aws.amazon.com/architecture/well-architected/
- https://cloud.google.com/architecture/framework
- https://learn.microsoft.com/en-us/azure/well-architected/
- https://www.ibm.com/architectures/well-architected/

** Project Structure

#+BEGIN_SRC shell :results output :exports results
tree -L 2 -d
#+END_SRC

** Diagrams

#+DIAGRAMS_START
*** Available Diagrams
The following diagrams are available in this project:

| Diagram Name | Description | Complexity |
|---------------------------------+-----------------------------------------------------------+------------|
| URL Shortener | A serverless URL shortening service | 3 |
| Photo Sharing App | A scalable photo sharing application | 5 |
| Ride Sharing Service | A real-time ride-sharing platform | 7 |
| Netflix-like Streaming | A video streaming service similar to Netflix | 8 |
| Twitter-like Social Network | A microblogging and social networking service | 6 |
| E-commerce Platform | A comprehensive e-commerce solution | 7 |
| IoT Data Processing Pipeline | An IoT data ingestion and processing architecture | 6 |
| Machine Learning Training | A distributed machine learning model training pipeline | 5 |
| Serverless Web Application | A scalable web application using serverless components | 4 |
| Multi-Region Active-Active | A globally distributed application with active-active setup | 9 |
-------------------------------------------+----------------+-------------------------|
| Overall Repository Quality | 7 | | 8 | |

** Note

In the diagrams folder, you will find Mermaid diagrams for various system designs.
These diagrams can be rendered using the mermaid command:

mermaid view diagrams/url_shortener.mmd

To build the diagrams, use the =make diagrams= command.

** Development Workflow

1. Clone the repository
2. Install dependencies: =make install-deps=
3. Build diagrams: =make diagrams=
4. Run tests: =make test=
5. Lint code: =make lint=

** Testing

To run tests, use the following command:

#+BEGIN_SRC shell
make test
#+END_SRC

** Contributing

Please read the CONTRIBUTING.org file for details on our code of conduct and the process for submitting pull requests.

** Literate Programming with Org-mode

This project uses org-mode for literate programming. To tangle source files from org files, use the following command:

#+BEGIN_SRC emacs-lisp
(org-babel-tangle)
#+END_SRC

** License

This project is licensed under the MIT License - see the LICENSE file for details.

** Contact

For help or questions, please open an issue or contact @jwalsh.

** Additional Resources

- AWS Documentation: https://docs.aws.amazon.com/
- https://cloudacademy.com/learning-paths/aws-solutions-architect-associate-saa-c02-certification-preparation-954/?utm_source=google&utm_medium=paid-search&utm_campaign=&utm_content=163936506156&utm_term=certified%20solutions%20architect%20associate&utm_feeditemid=&utm_device=c&gad_source=1&gclid=Cj0KCQjw-uK0BhC0ARIsANQtgGM_XsyHTXUKy31qNN4MaFjx_8TBhm5PL8Ooa19c9bK_1ju2LQx8MIYaAud1EALw_wcB