• Complain

Nathan Kozyra - Mastering Concurrency in Go

Here you can read online Nathan Kozyra - Mastering Concurrency in Go full text of the book (entire story) in english for free. Download pdf and epub, get meaning, cover and reviews about this ebook. year: 2014, publisher: Packt Publishing, genre: Home and family. Description of the work, (preface) as well as reviews are available. Best literature library LitArk.com created for fans of good reading and offers a wide selection of genres:

Romance novel Science fiction Adventure Detective Science History Home and family Prose Art Politics Computer Non-fiction Religion Business Children Humor

Choose a favorite category and find really read worthwhile books. Enjoy immersion in the world of imagination, feel the emotions of the characters or learn something new for yourself, make an fascinating discovery.

Nathan Kozyra Mastering Concurrency in Go
  • Book:
    Mastering Concurrency in Go
  • Author:
  • Publisher:
    Packt Publishing
  • Genre:
  • Year:
    2014
  • Rating:
    3 / 5
  • Favourites:
    Add to favourites
  • Your mark:
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5

Mastering Concurrency in Go: summary, description and annotation

We offer to read an annotation, description, summary or preface (depends on what the author of the book "Mastering Concurrency in Go" wrote himself). If you haven't found the necessary information about the book — write in the comments, we will try to find it.

Discover and harness Gos powerful concurrency features to develop and build fast, scalable network systems

Overview

  • Explore the core syntaxes and language features that enable concurrency in Go
  • Understand when and where to use concurrency to keep data consistent and applications non-blocking, responsive, and reliable
  • A practical approach to utilize application scaffolding to design highly-scalable programs that are deeply rooted in go routines and channels

In Detail

This book will take you through the history of concurrency, how Go utilizes it, how Go differs from other languages, and the features and structures of Gos concurrency core. Each step of the way, the book will present real, usable examples with detailed descriptions of the methodologies used. By the end, you will feel comfortable designing a safe, data-consistent, high-performance concurrent application in Go.

The focus of this book is on showing you how Go can be used to program high-performance, robust concurrent programs with Gos unique form of multithreading, which employs goroutines that communicate and synchronize across channels. Designed for any curious developer or systems administrator with an interest in fast, non-blocking, and resource-thrifty systems applications, this book is an invaluable resource to help you understand Gos powerful concurrency focus.

What you will learn from this book

  • Create goroutines as the building blocks of concurrency in Go
  • Extend the goroutines to include channels to open up communication
  • Design concurrent patterns to apply toward our examples and future applications
  • Explore methods to ensure data consistency remains paramount in concurrent and multi-core Go applications
  • Tune performance to squeeze the most out of existing hardware to keep your applications below resource thresholds
  • Utilize advanced concurrency patterns and best practices to stay low-level without compromising the simplicity of Go itself
  • Build several servers in Go that strongly utilize concurrency features

Approach

A practical approach covering everything you need to know to get up and running with Go, starting with the basics and imparting increasingly more detail as the examples and topics become more complicated. The book utilizes a casual, conversational style, rife with actual code and historical anecdotes for perspective, as well as usable and extensible example applications.

Who this book is written for

This book is intended for systems developers and programmers with some experience in either Go and/or concurrent programming who wish to become fluent in building high-performance applications that scale by leveraging single-core, multicore, or distributed concurrency.

Nathan Kozyra: author's other books


Who wrote Mastering Concurrency in Go? Find out the surname, the name of the author of the book and a list of all author's works by series.

Mastering Concurrency in Go — read online for free the complete book (whole text) full work

Below is the text of the book, divided by pages. System saving the place of the last page read, allows you to conveniently read the book "Mastering Concurrency in Go" online for free, without having to search again every time where you left off. Put a bookmark, and you can go to the page where you finished reading at any time.

Light

Font size:

Reset

Interval:

Bookmark:

Make
Mastering Concurrency in Go

Table of Contents
Mastering Concurrency in Go

Mastering Concurrency in Go

Copyright 2014 Packt Publishing

All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.

Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.

Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.

First published: July 2014

Production reference: 1160714

Published by Packt Publishing Ltd.

Livery Place

35 Livery Street

Birmingham B3 2PB, UK.

ISBN 978-1-78398-348-3

www.packtpub.com

Cover image by Pratyush Mohanta (<>)

Credits

Author

Nathan Kozyra

Reviewers

Jeremy R. Budnack

Jnos Fehr

Aleksandar S. Sokolovski

Michele Della Torre

Commissioning Editor

Julian Ursell

Acquisition Editor

Kevin Colaco

Content Development Editor

Athira Laji

Technical Editors

Pratik More

Pooja Nair

Shweta S. Pant

Rohit Kumar Singh

Copy Editors

Roshni Banerjee

Sarang Chari

Janbal Dharmaraj

Sayanee Mukherjee

Karuna Narayanan

Laxmi Subramanian

Project Coordinator

Danuta Jones

Proofreaders

Simran Bhogal

Ameesha Green

Paul Hindle

Indexers

Hemangini Bari

Priya Subramani

Graphics

Abhinash Sahu

Production Coordinator

Conidon Miranda

Cover Work

Conidon Miranda

About the Author

Nathan Kozyra has been programming both recreationally and professionally for more than a decade now. His first experience came while writing games on his grandfather's Commodore 64, and in the ensuing decades, he's crafted technological solutions and applications in nearly every major language for a host of software and media companies as a developer, advisor, creative technologist, and CTO. He is currently the CTO of Pointslocal. A new-language enthusiast and C++ stalwart, his attention was quickly captured by Google's Go language, both for the language's creators and ethos as well as its apparent post-C approach to systems languages. Having dived in quickly, Go is now his go-to language for fast, concurrent applications.

This book is dedicated to Mary and Ethan.

About the Reviewers

Jeremy R. Budnack is a software engineer and consultant from Buffalo, NY. His career includes almost 15 years of experience in software development and systems administration, spanning many diverse technology stacks and programming languages (including C#, Ruby, and Go). He currently works for Stark & Wayne, LLC., specializing in building cloud-based solutions using a variety of technologies including Cloud Foundry, BOSH, OpenStack, and vSphere.

Jnos Fehr has been involved in a wide variety of projects since 1996, including technical support for NATO operations and development of high-performance computing grids, national TV and radio websites, and web applications for universities and adult learning. In recent years, he has been heavily involved in distributed and concurrent software architectures. He is currently the Head of Development for Intern Avenue.

To my love, Szilvi, who painted my cycling shoes full with gophers.

Aleksandar Stefan Sokolovski is a project manager and an ICT research engineer from Skopje, Macedonia. He has a Bachelor of Science (BSc) degree in Computer Science from the Ss. Cyril and Methodius University and a Master of Science (MSc) degree in Technology, Innovation, and Entrepreneurship from the University of Sheffield, U.K. He has been a member of an organization committee (CITYR'09 / CITYR'11), a participant (CIIT'11), and a presenter (XIX Scientific Conference IT 2014) at multiple international research conferences; he is also a published author of many research papers for international conferences including a published paper in a journal (ETF Journal of Electrical Engineering, 2014). He has worked as a research associate and teaching assistant at the Faculty for Informatics and Computer Science in Skopje, Macedonia. He currently works as a research associate at the Institute for Digital Forensics and as an IT engineer, a research engineer, and a R&D project coordinator at telecommunications and Internet provider Neotel, Skopje from Republic of Macedonia. He is a member of the Executive Committee of IEEE R8, Section in Republic of Macedonia as Professional Activities Officer and is also a member of Project Management Institute (PMI)

I am heartily thankful to my mentors, professors Dragan Mihajlov, Toni, and Saso Gelev, whose encouragement, guidance, and support from the initial to the final level enabled me to develop an understanding and the knowledge to take on a significant part of this project. I offer my regards and respect to all my colleagues for their support and all their help. I would like to thank Packt Publishing and its team working on the book.

Lastly, I offer my regards and blessings to all of those who supported me in any respect during the completion of the project: my family for their support and all their help, especially my sister Sofija, my parents Stefan and Brankica, and last but not least, my girlfriend Kalina.

Michele Della Torre is a software engineer, programmer, and geek born in Italy in 1982. In love with computers since he was a child, he started studying computer science at high school and obtained his Master's degree in Computer Engineering in 2007 at the Politecnico of Milan university. After university, he continued to learn about software design and architectures, agile methodologies, concurrent systems, and algorithms. He currently works in a home automation company and is occasionally involved in open source projects.

I'd like to thank my parents, my girlfriend Alessia, and my friends Alex and Fabio for their continuous support and patience.

www.PacktPub.com
Support files, eBooks, discount offers, and more

You might want to visit www.PacktPub.com for support files and downloads related to your book.

Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at > for more details.

At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks.

httpPacktLibPacktPubcom Do you need instant solutions to your IT - photo 1

http://PacktLib.PacktPub.com

Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book library. Here, you can access, read and search across Packt's entire library of books.

Next page
Light

Font size:

Reset

Interval:

Bookmark:

Make

Similar books «Mastering Concurrency in Go»

Look at similar books to Mastering Concurrency in Go. We have selected literature similar in name and meaning in the hope of providing readers with more options to find new, interesting, not yet read works.


Reviews about «Mastering Concurrency in Go»

Discussion, reviews of the book Mastering Concurrency in Go and just readers' own opinions. Leave your comments, write what you think about the work, its meaning or the main characters. Specify what exactly you liked and what you didn't like, and why you think so.