# System Design

- [🔀 Horizontal vs. Vertical Scaling](https://www.mohitkapadiya.com/system-design/horizontal-vs.-vertical-scaling.md): In the world of system design, scaling is a crucial concept that determines how well an application can handle growth and increased load. There are two primary approaches to scaling.
- [📚Distributed Systems](https://www.mohitkapadiya.com/system-design/distributed-systems.md): Distributed systems are a crucial component of modern system design, enabling scalability, fault tolerance, and high availability.
- [💾 Microservices](https://www.mohitkapadiya.com/system-design/microservices.md): Microservices architecture is a design approach in which a single application is composed of many loosely coupled and independently deployable smaller components or services.
- [🔒Hashing, Signatures, and Encryption in Microservices](https://www.mohitkapadiya.com/system-design/hashing-signatures-and-encryption-in-microservices.md): All about  how hashing, digital signatures, and encryption are integrated into microservices architecture with real-world examples, calculations, and visualizations.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://www.mohitkapadiya.com/system-design.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
