Subscribe to the Ardan Labs Insider

You’ll get our FREE Video Series & special offers on upcoming training events along with notifications on our latest blog posts.

Included in your subscription
  • Access to our free video previews
  • Updates on our latest blog posts
  • Discounts on upcoming events

Valid email required.

Submit failed. Try again or message us directly at hello@ardanlabs.com.

Thank You for Subscribing

Check your email for confirmation.

Ultimate Go: Advanced Engineering Episode 7

Author image

Cheikh Seck

Introduction

In episode 6, Bill gives an overview of what consensus algorithms are and how these algorithms ensure distributed databases are in sync. Moving forward Bill will adopt the proof of authority (PoA) algorithm as a means to determine which node has the ability to write the next record. To jog your memory, PoA is a consensus mechanism where identity is used as a stake. By implementing this algorithm, Bill will add transparency to his dependency manager as he is no longer the only user with the ability to add new records. The dependency manager now meets the teams’ requirements for transparency, however, it will have low throughput since only one record can be shared and inserted at a time.

In this video, Bill will add a new architectural change to his database and introduce a new data structure to queue records that will be added to the database. He states that this data structure will act as a memory pool and must be synchronized across the different nodes. He sets these requirements to ensure that there is no ongoing duplicate work and nodes starved from writing have the chance to insert a new record. Watch along as Bill gives a walkthrough of how a blockchain solves the throughput problem introduced by adopting consensus algorithms.

Things you will learn in this video

  • Memory pool is a batch of records to insert into a database.
  • Memory pools increase efficiency as it prevents 2 nodes from trying to insert the same record.
  • Why/How audits will be performed with the memory pool.
  • A batch of records is a block on the blockchain.

Video

Go Training

We have taught Go to thousands of developers all around the world since 2014. There is no other company that has been doing it longer and our material has proven to help jump start developers 6 to 12 months ahead of their knowledge of Go. We know what knowledge developers need in order to be productive and efficient when writing software in Go.

Our classes are perfect for both experienced and beginning engineers. We start every class from the beginning and get very detailed about the internals, mechanics, specification, guidelines, best practices and design philosophies. We cover a lot about "if performance matters" with a focus on mechanical sympathy, data oriented design, decoupling and writing production software.

Capital One
Cisco
Visa
Teradata
Red Ventures

Interested in Ultimate Go Corporate Training and special pricing?

Let’s Talk Corporate Training!

Join Our Online
Education Program

Our courses have been designed from training over 30,000 engineers since 2013, and they go beyond just being a language course. Our goal is to challenge every student to think about what they are doing and why.