Distributed Systems using Go Workshop • Full Stack Tech Radar Day 2019

Distributed Systems using Go Workshop

Roy Pearl

Backend tech leader
Instructor: Roy Pearl

In this Go workshop we'll build and execute a distributed simulation of a soccer game. We'll use Go builtin concurrency concepts such as goroutines and channels, Redis as a message broker and Vice library to connect internal go-channel with Redis.This workshop is divided to 5 development phases, each one provides an initial state as separated branch, with a challenge to develop. At the end of this workshop we'll sit back and enjoy the soccer game in which every participant plays the role of a single player of field.

Phases:

  • phase_1-concurrency_setup - have a single player kick the ball locally using internal go channels
  • phase_2-distribution_setup - prepare channels for distribution
  • phase_3-vice_integration - running simulation locally using Redis and Vice
  • phase_4-display_service - viewing game on local UI with display service
  • phase_5-lets_rock - connecting to a shared Redis server and playing together!

Prerequisites:

  • Redis server
  • GO SDK
  • Go IDE
  • GIT