Distribuovaný systém je kolekce nezávislých počítačů, které spolu komunikují prostřednictvím počítačové sítě a spolupracují na dosažení společného cíle. Uživatel vnímá takový systém jako jeden ucelený uzel (transparentnost).
Distribuované systémy řeší problémy, které jeden superpočítač nezvládne:
—
V distribuovaných systémech nelze dosáhnout všeho najednou. Eric Brewer definoval CAP teorém, podle kterého může systém splňovat pouze dvě ze tří vlastností:
—
L. Peter Deutsch definoval 8 mýtů, kterým vývojáři často věří a které vedou k pádům systémů:
1. Síť je spolehlivá. 2. Latence je nulová. 3. Šířka pásma je nekonečná. 4. Síť je bezpečná. 5. Topologie sítě se nemění. 6. Existuje jeden správce systému. 7. Náklady na přenos dat jsou nulové. 8. Síť je homogenní.
—
Jak se distribuované systémy organizují?
—
Jak se tisíce počítačů shodnou na jedné hodnotě (např. kdo je vlastníkem Bitcoinu)? To řeší algoritmy konsenzu:
—
| Oblast | Nástroje |
|---|---|
| Zpracování dat | Apache Spark, Hadoop |
| Zasílání zpráv | Apache Kafka, RabbitMQ |
| Orchestrace | Kubernetes |
| Databáze | Cassandra, MongoDB, DynamoDB |
Související články:
Tagy: it theory distributed-systems cap-theorem microservices scalability