Tag: Golang
-
Reducing Go execution tracer overhead with frame pointer unwinding
Posted on February 1, 2023, Level intermediate Resource Length medium
The Go Execution Tracer (aka runtime/trace) was designed to achieve low enough overhead to be usable on "a server in production serving live traffic". This is achieved by writing events into per-P buffers, using RDTSC for timestamps, and encoding into a relatively efficient binary format. By Felix Geisendörfer.
Tags golang programming microservices cloud performance
-
Concurrency in Go-2(Go Channels)
Posted on October 25, 2022, Level intermediate Resource Length medium
The channel acts as a pipe by which we send typed values from one Goroutine to another. It guarantees synchronization since only one Goroutine has access to a data item at any given time. The ownership of the data is passed between different Goroutine. By Neeraj Kumar.
Tags app-development programming golang performance
-
Reducing graph complexity using Go and transitive reduction
Posted on September 19, 2022, Level intermediate Resource Length medium
Directed acyclic graphs (DAGs) serve a wide variety of applications in computer science, biology, sociology, and other fields that involve complex networks. While these graphs often contain a large number of edges, some of the edges might be redundant, making computations unnecessarily expensive and the graph structure harder to understand. By Dominik Braun.
Tags apis app-development performance golang database
-
GOMEMLIMIT is a game changer for high-memory applications
Posted on August 27, 2022, Level beginner Resource Length long
It can be very frustrating when Go applications use less memory than what is available to them, and yet they still manage to run out of memory and crash. Go 1.19 introduced GOMEMLIMIT, which completely changes how you can manage memory limits in Go. By Etienne Dilocker.
Tags app-development devops golang programming
-
Hidden gems of Google BigQuery
Posted on August 9, 2022, Level intermediate Resource Length medium
BigQuery is amazing. It is one of my favorite tools within Google Cloud. Luckily, it looks like Google feels the same and, to the joy of BigQuery fans, keeps adding new features there. By Artem Nikulchenko.
Tags golang app-development database miscellaneous gcp
-
Shaving 40% off Google's B-Tree implementation with Go Generics
Posted on August 8, 2022, Level advanced Resource Length medium
There are many reasons to be excited about generics in Go. In this article, I'm going to show how, using Go generics, ScyllaDB achieved a 40% performance gain in an already well-optimized package, the Google B-Tree implementation. By Michal Matcczuk.
Tags golang app-development performance programming
-
An introduction to generics in Golang
Posted on April 2, 2022, Level beginner Resource Length medium
The Go 1.18 release adds support for generics. Generics are the biggest change we've made to Go since the first open source release. By Robert Griesemer and Ian Lance Taylor.
Tags apis app-development cloud programming web-development golang
-
How to become a Golang developer: A 6-step career guide
Posted on March 11, 2022, Level beginner Resource Length medium
Go is an in-demand language across the board. Today, we'll discuss the steps to become an employable and modern Go developer. By The Educative Team.
Tags programming career web-development app-development golang
-
gRPC for microservices communication
Posted on September 19, 2021, Level intermediate Resource Length medium
Microservices architecture has become a popular choice for developing software applications. In a microservice architecture, the microservices often need to communicate with each other. Compared to the traditional RESTful web API, a gRPC based RPC framework can be a better alternative for microservices communication. By Pankaj.
Tags apis microservices devops performance golang
-
Think gRPC, when you are architecting modern microservices!
Posted on August 11, 2021, Level intermediate Resource Length medium
More than ever before, present day businesses want their IT systems to constantly evolve and be capable of responding positively to the changing goals and priorities. As they say, change is the only constant. In this context, microservices have become the proverbial Holy Grail for solution architects to design and build modern software. By Nikhil Mohan.
Tags app-development apis golang cloud cio
-
WebAssembly to run blockchain using Go
Posted on April 26, 2021, Level intermediate Resource Length medium
Blockchain is a technology with countless applications and a great potential that is not yet fully utilized. It is an ordered list of blocks that are chained together, hence dubbed the name blockchain. By Mahmoud Fathy.
Tags golang app-development blockchain programming
-
5 common mistakes in Go
Posted on April 3, 2021, Level beginner Resource Length short
Some common mistakes that can be seen in Go are infinite recursive call, assignment to nil map, undesired value being used in goroutine, and more. By Jai Pradeesh.
Tags learning programming app-development golang