Scaling Go Applications Horizontally

Go allows applications to run extremely quickly and efficiently. However, eventually, a single instance of your application isn't enough. This course will teach you how to refactor your application to prepare it to scale across multiple servers.
Course info
Rating
(21)
Level
Intermediate
Updated
June 9, 2016
Duration
3h 42m
Table of contents
Description
Course info
Rating
(21)
Level
Intermediate
Updated
June 9, 2016
Duration
3h 42m
Description

Go allows highly performant applications to be built easily due to its focus on simplicity and speed. However, there comes a point where an application simply can't keep up when operating in a single process. This course, Scaling Go Applications Horizontally, will offer a series of techniques that will teach you how to spread the load out amongst many different processes. You'll also learn how to create distributed applications that can scale dynamically to meet changing demands. And, in order to gain the best possible understanding of the challenges and potential solutions, you'll learn how to write everything in pure Go, relying only on the standard library and no third party libraries for assistance. Armed with this knowledge, you'll be better equipped to understand what a third-party library can do to help you, or if you can get by with a custom solution. By the end of this course, you'll be able to refactor and scale your Go applications across multiple servers so that your apps can run faster and simpler than ever.

About the author
About the author

Michael Van Sickle is an application architect in Akron, Ohio. He is a mechanical engineer by training and a software engineer by choice. He is passionate about learning new programming languages and user experience design.

More from the author
Object-oriented Programming with Go
Intermediate
1h 42m
11 Aug 2017
Debugging Go Applications with Delve
Intermediate
2h 5m
10 Jul 2017
Creating Web Applications with Go
Intermediate
4h 47m
27 Apr 2017
More courses by Mike Van Sickle
Transcript
Transcript

Hi everyone, my name is Michael Van Sickle and welcome to my course Scaling Go Applications Horizontally. I am a software engineer at SitePen.

Go allows applications to run extremely quickly and efficiently however, there comes a point when a single instance of your application isn't enough.In this course, we are going to learn how to refactor your application to prepare it to scale across multiple servers.

Some of the major topics that we will cover include:

  • How to serve multiple application instances with a load balancer
  • How to add caching in a scalable manner and
  • How to manage logs in a distributed application

By the end this course, you’ll know the fundamentals of what it means to scale an application horizontally and how you can implement your own scalable servies.

Before beginning the course you should be familiar with the Go language and how to work with Docker containers.

I hope you’ll join me on this journey to learn how to scale Go applications horizontally with this course, at Pluralsight.