Learning Path Go Building Cloud Native Go Applications
What you’ll learn
Design and architect cloud native applications
Learn all about Go microservices
Containerize and orchestrate Go microservices using Docker and Kubernetes
Learn to use Consul for microservice discovery
Implement asynchronous communication in Go using RabbitMQ as well as Kafka
Requirements
Basic knowledge of the Go programming language.
Basic knowledge of web services and web programming would be beneficial.
Description
Ever wanted to build massive, scalable, and performance-oriented cloud native applications that don’t crush under the demands of today’s customers? Well, look no further.
Embark on a journey like never before with Packt’s latest offering, Go: Building Cloud Native Go Applications
“Cloud native” has been the term du jour for quite some time now. As the world slowly moves towards the cloud, which promises lesser downtime, and more speed and efficiency, websites and applications that take full advantage of the capabilities of the cloud are dominating the world like never before, fast replacing monolithic web applications.
This Learning Path takes you on a journey to building fast, scalable cloud-based applications using Go, specifically, microservices in Go. We begin with learning about the basics of cloud-native applications. Then, we start learning about microservices, which form an integral part of applications that run on the cloud. We learn how to create simple microservices using the Go programming language. We then deploy our first application in the cloud using Kubernetes and Docker. Later, we cover topics such as service discovery and microservice communication in detail. Along the way, we will also be working with and learning to use a plethora of useful tools such as Kubernetes, RabbitMQ, Kafka, and Consul.
By the end of this Learning Path, you would have become skilled in creating seamless cloud-first applications and services using Go.
About The Author
Mario-Leander Reimer has been a chief technician at QAware since the beginning of 2014. He is responsible for the technical success of projects in the field of after sales for their customer BMW. He is a specialist in the design and implementation of complex system and software architectures based on open source technologies. As a member of the Java Community Process (JCP), his goal is to further improve the Java platform and to develop practical specifications. He is a speaker at international conferences and guest lecturer at Rosenheim University of Applied Sciences.
Overview
Section 1: Getting started with Cloud Native Go
Lecture 1 The Course Overview
Lecture 2 Motivation for Cloud Native Apps
Lecture 3 Challenges and Design Principles
Lecture 4 Decomposition with Microservices
Lecture 5 Introduction to the Cloud Native Stack
Lecture 6 Simple Go HTTP Server Implementation
Lecture 7 JSON Marshalling/Unmarshalling of Go Structs
Lecture 8 Simple REST API Implementation
Lecture 9 Basic Docker Workflow and Docker Commands
Lecture 10 Build Naïve Docker Image for Go Microservice
Lecture 11 Running Containerized Go Microservice Locally
Lecture 12 Improved Docker Image and Docker Compose
Lecture 13 Overview of Kubernetes Architecture and Main Concepts
Lecture 14 Deploy a Go Microservice to Kubernetes Locally
Lecture 15 Implement Deployment and Service Descriptors
Lecture 16 Scale Deployments and Perform Rolling Updates
Section 2: Advanced Cloud Native Go
Lecture 17 The Course Overview
Lecture 18 Anatomy of a Cloud Native Application Platform
Lecture 19 Overview of Go Microservice Frameworks and Libraries
Lecture 20 Advanced Go Microservice Implementation
Lecture 21 Containerization and Composition with Docker
Lecture 22 Microservice Orchestration with Kubernetes
Lecture 23 Using Consul for Microservice Discovery
Lecture 24 Using Consul for Central Microservice Configuration
Lecture 25 Implement Go Microservice Registration with Consul
Lecture 26 Implement Go Microservice Lookup with Consul
Lecture 27 Implement Service Discovery and Configuration with Kubernetes
Lecture 28 Microservice Communication Patterns- Sync and Async
Lecture 29 Implement Sync RCP calls with Binary Protocols
Lecture 30 Using Circuit Breakers for Resilient Communication
Lecture 31 Implement Message Queuing with RabbitMQ
Lecture 32 Implement Publish/Subscribe with Apache Kafka
The target audience for this Learning Path primary includes Go developers interested in learning to leverage the effectiveness of the Go programming language to build world-class and highly performant cloud native applications.
Course Information:
Udemy | English | 3h 59m | 386.15 MB
Created by: Packt Publishing
You Can See More Courses in the Developer >> Greetings from CourseDown.com