Build fast, scalable web server applications by harnessing the power of solution-driven programming with Go.
- Understanding the core concepts of the Go programming language.
- Designing and development of modern Web Server applications.
- Dealing with different kinds of database management solutions.
- Deploying applications with cutting edge technologies.
- Monitoring and maintenance of applications with popular tools.
In this book, we are going to learn how to design, develop and deploy Web Server Applications using the Go programming language. In recent years, Go has become the industrial standard for these kinds of applications; so by learning this, a lot of good opportunities can be opened in the market. All subjects will be covered through various practical examples.
This book will cover the state-of-the-art technology for the development of Web Applications and follow all industrial standards. At the beginning we will do the preparation for development. Here, we will learn the basics of the Go programming language, the basics of Web Servers, how to set up a project with Go, and how to design software solutions.
Later, we will concentrate more on development. We will learn how to develop the application designed in the previous chapters, how to use different types of databases, how to test our application, and how to make it secure. At the end of the book, we will show how to deploy the application and monitor it after deployment.
After reading this book, the readers can independently develop Web Server Applications or include themselves in already-started projects.
What you will learn
- Solve common problems with the Go programming language.
- Be familiar with the terms related to server applications.
- Understand the phases in the software development process.
- Be able to independently design software solutions and use some best practices.
- Be familiar with multiple different database management solutions (relational and NoSQL) and be able to predict which best suits their needs.
- Learn how to deploy applications.
- Understand and know how to apply monitoring and alerting concepts.