Skip to main content

Advanced Distributed Systems Design

32h 22m 8s
English
Free

Course description

Udi Dahan is one of the world’s foremost experts on Service-Oriented Architecture, Distributed Systems and Domain-Driven Design. He's also the creator of NServiceBus, the most popular service bus for .NET.

Read more about the course

Everything you should know about distributed systems design

This online course on modern architecture design practices for distributed systems with Service-Oriented Architecture will change the way you think about designing software systems.

  • Are you sold on the concept of microservices but struggle to implement them in your system?
  • Are you tired of spending every day trying to tame the big ball of mud monster?
  • Does the coupling of your system components make your software hard to deliver and impossible to scale?

We've recorded an entire week of distributed design training by Udi Dahan containing everything you wish you'd known years ago about distributed systems design, such as:

  • Avoiding common pitfalls in distributed systems
  • Using loosely coupled messaging communication
  • Identifying and allocating business logic to services
  • Decomposing services into layers, tiers and processes
  • Designing for service management and monitoring in production environments
    Now you can fast-track your way to building a scalable distributed system at your own pace.

And the best part?

You can learn to master the principles in this course wherever and whenever, which makes this course:

  • More convenient to attend: all you need to attend is an internet connection and a browser
  • More cost-effective: you won't have to travel abroad
  • Easier to approve: you won't necessarily need to take time off

More flexible: you can time-travel by going back and forth, or even increase the playback speed

In this course you'll get:

  • 5 days worth of expert systems design training
  • Lifetime access to the course material
  • Lifetime access to the ADSD alumni forum
  • Copy of slides used in the course

Watch Online

0:00 0:00
#Lesson TitleDuration
1Introduction: Systems vs. Applications06:11
2Fallacy #1: The network is reliable13:44
3Fallacy #2: Latency isn’t a problem16:46
4Fallacy #3: Bandwidth isn’t a problem25:11
5Fallacy #4: The network is secure13:59
6Fallacy #5: The network topology won’t change09:21
7Fallacy #6: The admin will know what to do12:10
8Fallacy #7: Transport cost isn’t a problem13:41
9Fallacy #8: The network is homogeneous11:43
10Summary: 8 fallacies of distributed computing06:07
11Fallacy #9: The system is atomic13:15
12Fallacy #10 : The system is finished18:36
13Fallacy #10: Towards a better development process26:18
14Fallacy #11 : The business logic can and should be centralized22:40
15Coupling in applications: afferent and efferent26:00
16Coupling in systems: platform, temporal and spatial11:56
17Coupling solutions: platform16:22
18Coupling solutions: temporal and spatial22:01
19Coupling: summary and Q&A12:56
20Why messaging?01:56
21One-way, fire & forget10:14
22Performance: messaging vs RPC18:41
23Service interfaces vs strongly-typed messages27:23
24Fault tolerance22:11
25Auditing05:16
26Web Services invocation26:19
27Exercise: selling messaging to your organization - overview05:57
28Exercise: selling messaging to your organization - discussion (part 1)22:36
29Exercise: selling messaging to your organization - discussion (part 2)30:41
30Exercise: selling messaging to your organization - summary16:47
31ealing with out of order messages07:35
32Request-response18:29
33Publish-subscribe20:22
34Publish-subscribe: topics22:42
35Exercise: dealing with out of order messages - overview25:28
36Exercise: dealing with out of order messages - solutions39:41
37Visualization14:39
38Messaging patterns: summary03:42
39Intro to architectural styles07:42
40Architectural styles: Broker24:28
41Architectural styles: Bus22:24
42Architectural styles: Bus vs Broker19:32
43SOA tenets17:59
44Service example14:41
45Q&A24:38
46Services modelling: Workflows, boundaries and business capabilities22:32
47UI composition and Branding service22:04
48IT/Ops service29:44
49Exercise: services modelling (hotel) - overview15:33
50Exercise: services modelling (hotel) - solutions23:43
51SOA modelling process and approach17:52
52Domain analysis: Hotel21:41
53Domain analysis: Hotel - payment29:11
54Domain analysis: Hotel - booking23:43
55Domain analysis: Hotel - check-in18:45
56usiness components29:22
57Autonomous components33:33
58Autonomous components: deployment44:24
59Service boundaries32:56
60Reporting22:24
61Referential integrity15:12
62Team structure37:02
63Intro to CQRS11:41
64Non-collaborative domains35:38
65Collaborative domains55:21
66CQRS theory01:04:55
67CQRS in action15:20
68CQRS: summary04:23
69Q&A: event sourcing08:55
70Q&A: search, reporting, and requirements vs user wishes13:03
71Engine pattern11:24
72Q&A: engine pattern37:25
73Deployment13:54
74Monitoring21:33
75Scaling20:01
76Fault-tolerance, backups, disaster recovery17:49
77Versioning08:50
78Sagas: long-running processes21:44
79Sagas: request-response19:43
80Sagas: event-driven16:27
81Sagas: time component15:39
82Exercise: saga design - overview16:41
83Exercise: saga design - solutions56:03
84Domain models14:06
85Testing domain models03:39
86Domain models deployment09:23
87Concurrency models07:21
88Realistic concurrency24:49
89Domain models: sagas14:49
90The rewrite tax08:36
91Phase 1: Good programming practices13:36
92Phase 2: Pub/sub17:04
93Phase 3: carve out pieces23:36
94Phase 4: attack the database49:27
95Caching22:15
96Content Delivery Networks21:00
97Personalization15:17

Comments

0 comments

Want to join the conversation?

Sign in to comment

Similar courses

Build Side Projects With 500k+ Users: Coming Up With An Idea

Build Side Projects With 500k+ Users: Coming Up With An Idea

Sources: Alex Chiou
You spent 50+ hours refining your resume and LinkedIn profile. Sent out over 1000 job applications. But despite all the effort, invitations for...
2 hours 14 minutes 19 seconds
Build & Launch Your SaaS in Under 7 Days

Build & Launch Your SaaS in Under 7 Days

Sources: jsmastery.pro, Adrian Hajdin
A comprehensive master class that will help you quickly design, develop, deploy, and monetize your own SaaS application using modern...
Building Multi-Platform Browser Extensions

Building Multi-Platform Browser Extensions

Sources: Server Side Up
Skip the time reading outdated, unsupported documentation from multiple sources and get started with development immediately. I wrote this book to be the guide I wish I had whe...
58 minutes 15 seconds
The Software Architect Mindset (COMPLETE)

The Software Architect Mindset (COMPLETE)

Sources: ArjanCodes
The course "The Software Architect Mindset" teaches the fundamentals of software architecture and provides practical advice on creating software products...
12 hours 6 minutes 39 seconds
Software Engineering Beginner Fundamentals

Software Engineering Beginner Fundamentals

Sources: Caleb Curry
Why is it important to start with the basics? A successful software engineer must possess a wide range of knowledge and skills. However, to avoid getting...
14 hours 43 minutes 9 seconds