SlideShare a Scribd company logo
1 of 52
Download to read offline
Distributed systems
beauty and the beast
MICHAŁ ŁUKASZEWSKI, INTEL
Roadmap
Glossary
A real life
Conclusions
Glossary
WHAT A „DISTRIBUTES SYSTEM” IS?
Loosely coupled,
service oriented architecture
„Nodes”
Distributed memory
Communication through network
Why we distributed systems
AND WHAT HAPPNES THEN
Hype Driven Development
Monolith architecture
Premature optimization
Overengineering
https://twitter.com/ziobrando/status/741186560373186560
DRY is not about identical chunks of bits or characters in different places.
DRY aims at not repeating domain concepts
What happens then?
Cyclomatic complexity
Cyclomatic complexity
Monolith architecture
Monolith Distributed architecture
Monolith Distributed architecture
Costs
Maintenance costs
Logs (distributed)
Monitoring
Availibity
Access policies
Backups
UPDATES!
Perfomance vs. costs
HIGH SKILLS OF DEVELOPERS
The true problem is...
DATA
Calling a remote system
Async
Error handling (and their are asynchronous and distributed)
Monitoring a progress of request flow
Security
QoS
IoC (on the architecture level)
Dealing with past events
Skills of developers and programmers
Callback hell
Security
Sign in/ssl/keys (we know everything about this)
How we can confirm that data from queue are safe and
trustable?
What we can do if remote systems unexpectably sends
to us many strange requests (as part of the botnet)
Neverending story...
Conclusions
IS THERE IS RIGHT WAYS?
Design and maintenance of distributed
systems is
Design and maintenance of distributed
systems is
Design and maintenance of distributed
systems is
Design and maintenance of distributed
systems is
Literatura
• https://martinfowler.com/ieeeSoftware/coupling.pdf
• https://thenewstack.io/dockercon-europe-adrian-
cockcroft-on-the-state-of-microservices/
• https://jrtrivedi.blogspot.com/2016/03/difference-
between-loosely-coupled-and.html
• https://speakerdeck.com/mat3u/domain-events-czyli-
jak-radzic-sobie-z-rzeczywistoscia
• https://speakerdeck.com/ulff/event-sourcing-in-php
• http://blog.best.net.pl/16-key-points-wydajnosc-w-
budowaniu-aplikacji-internetowych/
• https://www.linkedin.com/profile/portfolio?id=31205064
&authType=name&authToken=YnLc&mediaID=51178139
&trk=landing_share
• http://danielwhittaker.me/2014/09/29/handling-
concurrency-issues-cqrs-event-sourced-system/
• https://www.youtube.com/watch?v=l2vQqJW64DQ

More Related Content

Similar to Distributed Systems @ Code Europe

01 - Introduction to Distributed Systems
01 - Introduction to Distributed Systems01 - Introduction to Distributed Systems
01 - Introduction to Distributed SystemsDilum Bandara
 
Re-engineering Engineering: from a cathedral to a bazaar?
Re-engineering Engineering: from a cathedral to a bazaar?Re-engineering Engineering: from a cathedral to a bazaar?
Re-engineering Engineering: from a cathedral to a bazaar?Open Networking Summits
 
Triangle bdpa wo vid
Triangle bdpa wo vidTriangle bdpa wo vid
Triangle bdpa wo vidsantosomar
 
Elastically scalable architectures with microservices. The end of the monolith?
Elastically scalable architectures with microservices. The end of the monolith?Elastically scalable architectures with microservices. The end of the monolith?
Elastically scalable architectures with microservices. The end of the monolith?Javier Arias Losada
 
Linking Programming models between Grids, Web 2.0 and Multicore
Linking Programming models between Grids, Web 2.0 and Multicore Linking Programming models between Grids, Web 2.0 and Multicore
Linking Programming models between Grids, Web 2.0 and Multicore Geoffrey Fox
 
Cytoscape ci chapter 1
Cytoscape ci chapter 1Cytoscape ci chapter 1
Cytoscape ci chapter 1bdemchak
 
Micro services Architecture with Vortex -- Part I
Micro services Architecture with Vortex -- Part IMicro services Architecture with Vortex -- Part I
Micro services Architecture with Vortex -- Part IAngelo Corsaro
 
internet architecture.pdf
internet architecture.pdfinternet architecture.pdf
internet architecture.pdfqhawengcongo
 
A Data Hiding Techniques Based on Length of English Text using DES and Attack...
A Data Hiding Techniques Based on Length of English Text using DES and Attack...A Data Hiding Techniques Based on Length of English Text using DES and Attack...
A Data Hiding Techniques Based on Length of English Text using DES and Attack...IJORCS
 
DockerCon EU 2015: Containing IoT Sensor Telemetry
DockerCon EU 2015: Containing IoT Sensor TelemetryDockerCon EU 2015: Containing IoT Sensor Telemetry
DockerCon EU 2015: Containing IoT Sensor TelemetryDocker, Inc.
 
DavidRodriguez ISCRAM summerschool 2012
DavidRodriguez ISCRAM summerschool 2012DavidRodriguez ISCRAM summerschool 2012
DavidRodriguez ISCRAM summerschool 2012d_rdgz
 
Internet Scale Architecture
Internet Scale ArchitectureInternet Scale Architecture
Internet Scale ArchitectureRightScale
 
20130524 hybrid worldsmultirobot_cignonifedi
20130524 hybrid worldsmultirobot_cignonifedi20130524 hybrid worldsmultirobot_cignonifedi
20130524 hybrid worldsmultirobot_cignonifediacignoni
 
Architectural design
Architectural designArchitectural design
Architectural designHuda Alameen
 
Interactive Visualizations for teaching, research, and dissemination
Interactive Visualizations for teaching, research, and disseminationInteractive Visualizations for teaching, research, and dissemination
Interactive Visualizations for teaching, research, and disseminationScott A. Hale
 

Similar to Distributed Systems @ Code Europe (20)

slides15-1.pdf
slides15-1.pdfslides15-1.pdf
slides15-1.pdf
 
01 - Introduction to Distributed Systems
01 - Introduction to Distributed Systems01 - Introduction to Distributed Systems
01 - Introduction to Distributed Systems
 
Re-engineering Engineering: from a cathedral to a bazaar?
Re-engineering Engineering: from a cathedral to a bazaar?Re-engineering Engineering: from a cathedral to a bazaar?
Re-engineering Engineering: from a cathedral to a bazaar?
 
Triangle bdpa wo vid
Triangle bdpa wo vidTriangle bdpa wo vid
Triangle bdpa wo vid
 
Elastically scalable architectures with microservices. The end of the monolith?
Elastically scalable architectures with microservices. The end of the monolith?Elastically scalable architectures with microservices. The end of the monolith?
Elastically scalable architectures with microservices. The end of the monolith?
 
Linking Programming models between Grids, Web 2.0 and Multicore
Linking Programming models between Grids, Web 2.0 and Multicore Linking Programming models between Grids, Web 2.0 and Multicore
Linking Programming models between Grids, Web 2.0 and Multicore
 
Cytoscape ci chapter 1
Cytoscape ci chapter 1Cytoscape ci chapter 1
Cytoscape ci chapter 1
 
Micro services Architecture with Vortex -- Part I
Micro services Architecture with Vortex -- Part IMicro services Architecture with Vortex -- Part I
Micro services Architecture with Vortex -- Part I
 
IoT.pdf
IoT.pdfIoT.pdf
IoT.pdf
 
internet architecture.pdf
internet architecture.pdfinternet architecture.pdf
internet architecture.pdf
 
A Data Hiding Techniques Based on Length of English Text using DES and Attack...
A Data Hiding Techniques Based on Length of English Text using DES and Attack...A Data Hiding Techniques Based on Length of English Text using DES and Attack...
A Data Hiding Techniques Based on Length of English Text using DES and Attack...
 
DockerCon EU 2015: Containing IoT Sensor Telemetry
DockerCon EU 2015: Containing IoT Sensor TelemetryDockerCon EU 2015: Containing IoT Sensor Telemetry
DockerCon EU 2015: Containing IoT Sensor Telemetry
 
DavidRodriguez ISCRAM summerschool 2012
DavidRodriguez ISCRAM summerschool 2012DavidRodriguez ISCRAM summerschool 2012
DavidRodriguez ISCRAM summerschool 2012
 
Ccna complete notes
Ccna complete notesCcna complete notes
Ccna complete notes
 
Internet Scale Architecture
Internet Scale ArchitectureInternet Scale Architecture
Internet Scale Architecture
 
20130524 hybrid worldsmultirobot_cignonifedi
20130524 hybrid worldsmultirobot_cignonifedi20130524 hybrid worldsmultirobot_cignonifedi
20130524 hybrid worldsmultirobot_cignonifedi
 
Architectural design
Architectural designArchitectural design
Architectural design
 
Se lec6
Se lec6Se lec6
Se lec6
 
Mvc
MvcMvc
Mvc
 
Interactive Visualizations for teaching, research, and dissemination
Interactive Visualizations for teaching, research, and disseminationInteractive Visualizations for teaching, research, and dissemination
Interactive Visualizations for teaching, research, and dissemination
 

More from Michal Lukaszewski

How we built a tools stack for the benchmarking AI and what happened next
How we built a tools stack for the benchmarking AI and what happened nextHow we built a tools stack for the benchmarking AI and what happened next
How we built a tools stack for the benchmarking AI and what happened nextMichal Lukaszewski
 
Dwa sposoby na pisanie aplikacji bez błędów
Dwa sposoby na pisanie aplikacji bez błędówDwa sposoby na pisanie aplikacji bez błędów
Dwa sposoby na pisanie aplikacji bez błędówMichal Lukaszewski
 
How to fix a code to not corrupt an application
How to fix a code to not corrupt an applicationHow to fix a code to not corrupt an application
How to fix a code to not corrupt an applicationMichal Lukaszewski
 
Budowanie aplikacji PHP bez użycia frameworków
Budowanie aplikacji PHP bez użycia frameworkówBudowanie aplikacji PHP bez użycia frameworków
Budowanie aplikacji PHP bez użycia frameworkówMichal Lukaszewski
 
Domain Events in Distributed Architecture
Domain Events in Distributed ArchitectureDomain Events in Distributed Architecture
Domain Events in Distributed ArchitectureMichal Lukaszewski
 
Technologie mobilne w platformach edukacyjnych. Kosmikus, studium przypadku
Technologie mobilne w platformach edukacyjnych. Kosmikus, studium przypadkuTechnologie mobilne w platformach edukacyjnych. Kosmikus, studium przypadku
Technologie mobilne w platformach edukacyjnych. Kosmikus, studium przypadkuMichal Lukaszewski
 

More from Michal Lukaszewski (9)

How we built a tools stack for the benchmarking AI and what happened next
How we built a tools stack for the benchmarking AI and what happened nextHow we built a tools stack for the benchmarking AI and what happened next
How we built a tools stack for the benchmarking AI and what happened next
 
Dwa sposoby na pisanie aplikacji bez błędów
Dwa sposoby na pisanie aplikacji bez błędówDwa sposoby na pisanie aplikacji bez błędów
Dwa sposoby na pisanie aplikacji bez błędów
 
How to fix a code to not corrupt an application
How to fix a code to not corrupt an applicationHow to fix a code to not corrupt an application
How to fix a code to not corrupt an application
 
Budowanie aplikacji PHP bez użycia frameworków
Budowanie aplikacji PHP bez użycia frameworkówBudowanie aplikacji PHP bez użycia frameworków
Budowanie aplikacji PHP bez użycia frameworków
 
Domain Events in Distributed Architecture
Domain Events in Distributed ArchitectureDomain Events in Distributed Architecture
Domain Events in Distributed Architecture
 
Action Domain Response
Action Domain ResponseAction Domain Response
Action Domain Response
 
Wydajność i optymalizacja
Wydajność i optymalizacjaWydajność i optymalizacja
Wydajność i optymalizacja
 
Technologie mobilne w platformach edukacyjnych. Kosmikus, studium przypadku
Technologie mobilne w platformach edukacyjnych. Kosmikus, studium przypadkuTechnologie mobilne w platformach edukacyjnych. Kosmikus, studium przypadku
Technologie mobilne w platformach edukacyjnych. Kosmikus, studium przypadku
 
Solid vs php
Solid vs phpSolid vs php
Solid vs php
 

Recently uploaded

CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 

Recently uploaded (20)

CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 

Distributed Systems @ Code Europe