Home | Amazing | Today | Tags | Publishers | Years | Account | Search 
Distributed Computing with Go: Practical concurrency and parallelism for Go applications

Buy

A tutorial leading the aspiring Go developer to full mastery of Golang's distributed features.

Key Features

  • This book provides enough concurrency theory to give you a contextual understanding of Go concurrency
  • It gives weight to synchronous and asynchronous data streams in Golang web applications
  • It makes Goroutines and Channels completely familiar and natural to Go developers

Book Description

Distributed Computing with Go gives developers with a good idea how basic Go development works the tools to fulfill the true potential of Golang development in a world of concurrent web and cloud applications. Nikhil starts out by setting up a professional Go development environment. Then you'll learn the basic concepts and practices of Golang concurrent and parallel development.

You'll find out in the new few chapters how to balance resources and data with REST and standard web approaches while keeping concurrency in mind. Most Go applications these days will run in a data center or on the cloud, which is a condition upon which the next chapter depends. There, you'll expand your skills considerably by writing a distributed document indexing system during the next two chapters. This system has to balance a large corpus of documents with considerable analytical demands.

Another use case is the way in which a web application written in Go can be consciously redesigned to take distributed features into account. The chapter is rather interesting for Go developers who have to migrate existing Go applications to computationally and memory-intensive environments. The final chapter relates to the rather onerous task of testing parallel and distributed applications, something that is not usually taught in standard computer science curricula.

What you will learn

  • Gain proficiency with concurrency and parallelism in Go
  • Learn how to test your application using Go's standard library
  • Learn industry best practices with technologies such as REST, OpenAPI, Docker, and so on
  • Design and build a distributed search engine
  • Learn strategies on how to design a system for web scale

Who This Book Is For

This book is for developers who are familiar with the Golang syntax and have a good idea of how basic Go development works. It would be advantageous if you have been through a web application product cycle, although it's not necessary.

Table of Contents

  1. Developer Environment for Go
  2. Understanding Goroutines
  3. Channels & Messages
  4. The RESTful Web
  5. Introducing Goophr
  6. Goophr Concierge
  7. Goophr Librarian
  8. Deploying Goophr
  9. Foundations of Web Scale Architecture
(HTML tags aren't allowed.)

Python Programming: An Introduction to Computer Science
Python Programming: An Introduction to Computer Science

This book is designed to be used as the primary textbook in a college-level first course in computing. It takes a fairly traditional approach, emphasizing problem solving, design, and programming as the core skills of computer science. However, these ideas are illustrated using a non-traditional language, namely Python.

Although I...

Carbon Allotropes: Metal-Complex Chemistry, Properties and Applications
Carbon Allotropes: Metal-Complex Chemistry, Properties and Applications

This book provides a detailed description of metal-complex functionalized carbon allotrope forms, including classic (such as graphite), rare (such as M- or T-carbon), and nanoforms (such as carbon nanotubes, nanodiamonds, etc.). Filling a void in the nanotechnology literature, the book presents chapters generalizing the synthesis,...

Introduction to Search with Sphinx: From installation to relevance tuning
Introduction to Search with Sphinx: From installation to relevance tuning

I can’t quite believe it, but just 10 years ago there was no Google.

Other web search engines were around back then, such as AltaVista, HotBot, Inktomi, and AllTheWeb, among others. So the stunningly swift ascendance of Google can settle in my mind, given some effort. But what’s even more unbelievable is that...


Internet Security: A Jumpstart for Systems Administrators and IT Managers
Internet Security: A Jumpstart for Systems Administrators and IT Managers

Internet Security discusses not only the technology needed to support a solid security strategy, but also those policies and processes that must be incorporated in order for that strategy to work.

New methods of breaking into corporate networks are resulting in major losses. This book provides the latest information on how to...

On Lisp: Advanced Techniques for Common Lisp
On Lisp: Advanced Techniques for Common Lisp

This book is intended for anyone who wants to become a better Lisp programmer. It assumes some familiarity with Lisp, but not necessarily extensive programming experience. The first few chapters contain a fair amount of review. I hope that these sections will be interesting to more experienced Lisp programmers as well, because they...

Internet Security: Cryptographic Principles, Algorithms and Protocols
Internet Security: Cryptographic Principles, Algorithms and Protocols
Cryptography is the key to securing the Internet

If every communication network were to use a secure system based on encryption, then viruses, worms and hackers would have a very hard time. Unfortunately, this scenario does not reflect the reality of the Internet world today. However, with security issues becoming more and more important...

©2020 LearnIT (support@pdfchm.net) - Privacy Policy