Skip to content

dotaviTS/Week-8

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Week-8

Introduction to Distributed Systems

Introduction to Week 8: Exploring Distributed Systems in Elixir

Hi guys,

As we prepare for Week 8 on our journey into Elixir, we are moving to an excting and critical aspect of modern software engineering: Distributed Systems.

What Are Distributed Systems?

Distributed Systems refer to a network of independent computers (nodes) that work together as a unified system. They enable parallel computation, enhance fault tolerance, and facilitate resource sharing, scaling applications beyond a single machine's capabilities.

Why Elixir?

Elixir, with its foundations on the Erlang virtual machine, provides baked-in support for distributed computing. It simplifies building, monitoring, and maintaining distributed applications, making it an ideal choice for scalable and resilient systems. Elixir provides something that is not easy to do in other in other languages, the concept of rpc or remote procedure calls, out of the box.

What to Expect Next WEek

During Week 8, we will go into topics such as:

  • Nodes and Remote Connections: Understanding how to create and connect nodes in Elixir. You can read up on libcluster here, if you're interested.
  • Distributed Registry and Process Management: Leveraging global registries to manage processes across nodes.
  • Distributed Transactions and Atomic Operations: Ensuring that operations across nodes are carried out atomically.
  • Monitoring and Managing Distributed Systems: Tools and techniques for observing and controlling distributed systems.

Here are some suggestions to help you prepare:

Ensure that you are comfortable with GenServer, Supervisors, and Registry, as these concepts will be extended in a distributed context. Create some basic genservers, try out variations of the examples and exercises.

Read up on these topics: If you're curious, take a look at Elixir's Distributed Tasks Guide Elixir Distributed Tasks Guide

Week 8 promises to be an exciting and challenging adventure into the world of distributed systems.

See you on Monday, when we'll populate the Week-8 repository with detailed notes, exercises, and examples.

Note: We will be looking at these areas next week:

  • Intro to IP and Networking
  • REST API'S (This is the standard way we communicate with our servers, and customers consume our services exposed by the server.
  • Distributed Computing - The architectural patterns and associated networking and technologies of how our servers are structured.
  • Make sure to have your TSBank branch up to date. Follow the examples and exercises. so you can easily rollback and undo when you have issues

About

Introduction to Distributed Systems

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages