Hey! I'm @codegangsta. Welcome to my workshop on Go micro-services with NATS. In case you don't already know, NATS is a high performance messaging system and connective technology (built in Go) that can do all sorts of amazing things. During this workshop I'm going to highlight some of the features of NATS that makes it a great fit for rethinking how you design and build your micro-service architectures.
Hopefully by the end of this workshop you will have been challenged to think a little outside of the box when it comes to connectivity, and you'll be able to take home some valuable lessons, invigorated by fresh ideas coming out of the NATS ecosystem.
Let's jump right in!
This workshop is designed to take about 4 hours. As such, I've broken down the agenda into 4 equal chunks. We will spend a total of 50 minutes on each section, with a 10 minute break to transition between sessions. The last 10 minutes of the workshop can be used for any outstanding questions before we wrap up.
While there is an agenda in place, I typically love to read the room and have no problem upending the entire workshop to explore a direction the attendees are interested in, so feel free to speak up and let me know when we are ready to embrace a tangent.
- Hour 1: First Steps
- Lecture: What is NATS?
- Exercise 1: Install the NATS CLI
- Exercise 2: Connecting the Room Part I
- Hour 2: Building Micro-services in Go
- Lecture: NATS for Micro-service Architectures
- Exercise 3: Building a Go Micro-service
- Exercise 4: Connecting the Room Part II
- Hour 3: The NATS Server
- Lecture: NATS Server topologies
- Exercise 5: Installing and Connecting to NATS Server
- Exercise 6: Leaf Nodes
- Hour 4: JetStream and Persistence
- Lecture: What is JetStream?
- Exercise 7: Creating your first Stream
- Exercise 8: Connecting the Room Part III
- Closing Ceremony