If you’re just starting out with distributed systems design, the possibilities can be overwhelming. APIs, message queueing, REST, GraphQL, gRPC… what should you choose, how does it work, how do you get started?
This workshop gives you a hands-on introduction to the most important messaging patterns used in modern application development. Using C# and .NET, we’ll build a series of small example apps and services, wire them together using these patterns, and discuss how – and when – you’d apply the same patterns in your own applications.
» What are “distributed systems”?
» Monoliths and microservices
» Common integration patterns
»Principles of distributed architecture
- Connecting Components using HTTP
» HTTP architectural patterns – XMLRPC, REST, GraphQL
» HTTP frameworks: WebAPI, NancyFX, ServiceStack
» Working with HTTP APIs: testing and tooling
» Scaling HTTP APIs: caching strategies
» Exercise: building an HTTP API client and server
- Message queues and pub/sub
» Principles of message queues
» Message queueing in .NET – Redis, MSMQ, EasyNetQ
» Queueing strategies and error handling
» Advanced architectural patterns: CQRS, event sourcing
» Exercise: building a pub/sub system using .NET
- Protocol Buffers and gRPC
» History of RPC on .NET – SOAP, DISCO, WSDL, WCF
» Introduction to Protocol Buffers
» Contract-first development
» Exercise: high-performance architecture using gRPC
- Connecting to the Web
» Integrating browsers with distributed systems
» The “Backends for Frontends” pattern
» Exercise: real-time browser notifications using SignalR
You can download the full program for this workshop at the following LINK.
* If you're interested in this program, please contact us at firstname.lastname@example.org to find out more about availability and prices.