bazmurphy / immersive-go-course

An immersive, introductory course to backend software engineering using go.
https://systems.codeyourfuture.io/
Creative Commons Zero v1.0 Universal
0 stars 0 forks source link

Sprint 2 - Projects - Memcached Clusters #49

Open bazmurphy opened 4 months ago

bazmurphy commented 4 months ago

Memcached Clusters

https://systems.codeyourfuture.io/projects/memcached-clusters

Sections

1. Introduction

2. Read about mcrouter

3. Running A Replicated Memcached Cluster

4. Running A Sharded Memcached Cluster

5. Build a Go program that can determine the topology of a memcached cluster

Key Things To Learn:

  1. Understand the differences between sharded and replicated datastores.
  2. Learn how to use mcrouter to create both sharded and replicated memcached clusters.
  3. Gain knowledge about the FaceBook Engineering mcrouter by reading the provided blog post.
  4. Learn how to set up and run a replicated memcached cluster using Docker Compose.
  5. Understand how to interact with mcrouter and memcached instances using the nc (netcat) command.
  6. Learn about the set, get, and delete commands in memcached.
  7. Understand the concept of TTL (Time-To-Live) in memcached.
  8. Learn how to read and understand the replicated mcrouter configuration in the docker-compose.yml file.
  9. Learn how to set up and run a sharded memcached cluster using Docker Compose.
  10. Understand the differences in behavior between sharded and replicated mcrouter configurations.
  11. Learn how to read and understand the sharded mcrouter configuration in the docker-compose.yml file.
  12. Learn how to write a Go program that can determine the topology of a memcached cluster.
  13. Understand how to use command-line flags in a Go program.
  14. Learn how to use the Go memcache client to interact with mcrouter and memcached instances from a Go program.
  15. Test the Go program against both sharded and replicated configurations to ensure it can differentiate between them.
SallyMcGrath commented 4 months ago

https://systems.codeyourfuture.io/projects/memcached-clusters/