Systems | Development | Analytics | API | Testing


Using gRPC with Golang

In this tutorial, you will learn how to work with the gRPC Golang library for microservice communication by creating a simple note-taking application. APIs and service-to-service communication are what make modern microservice architecture possible. REST is generally the preferred implementation pattern, but if you only use REST, you could miss out on the significant performance gains that gRPC can offer. gRPC can provide better speed and efficiency than REST APIs.

Testing Golang with httptest

Go, often referred to as Golang, is a popular programming language built by Google. Its design and structure help you write efficient, reliable, and high-performing programs. Often used for web servers and rest APIs, Go offers the same performance as other low-level languages like C++ while also making sure the language itself is easy to understand with a good development experience.

Golang Slices and Arrays

Golang is an open source programming language used largely for server-side programming and is developed by Google. With it static typing, it is a very simple and versatile programming language that is an excellent choice for beginners. Golang is a type-safe language and has a flexible and powerful type system. In addition, its syntax is very simple, making your code easier to read.

Ablyeye: How we visualized an Ably SDK with Go and Ebiten

I started working for Ably recently, at the beginning of 2022. One of the first tasks I was given was to build a demo project that used one of the Ably SDKs. Working as a backend Go developer for the past 4 years made my choice of SDK easy. I definitely wanted to work with ably-go. I found myself wondering how to explore, debug and test an SDK in a visual way, rather like how the Postman API Client interacts with an API.

Golang Testing Frameworks for Every Type of Test

While Go provides a testing package and a go test command, the former only offers basic testing capabilities. The package also has some drawbacks, such as missing assertions and increasing repetition with large-scale tests. As a result, several Go testing frameworks have been created to augment it. Go testing frameworks consist of tools and resources for creating and designing tests. Some of these frameworks incorporate the testing package and go test command, while others take a different approach.

Golang Debugging Tutorial

Golang or Go is a well-established programming language ground built for speed and efficiency. Robert Griesemer, Rob Pike, and Ken Thompson designed the language at Google. It was first announced to the public in 2009, and it was made open source in 2012. Go is the preferred choice among developers, but its simplicity can also leave it vulnerable to bugs and other programming issues.

Serving multiple SSL certificates in your Go tests

Over the past few months, I’ve been redesigning and writing StatusCake’s SSL monitoring feature from Node to Go. This blog post describes one of the more subtle challenges we came across to help you master it if you find yourself with it too! Writing a Go client that fetches an SSL certificate isn’t a new problem. A common approach is to use a http.Client. This limits you to just certificates served over HTTPS, when technically anything running TLS can have a certificate.

Get fine-grained access control of your server with AblyD

It’s fairly common to want to have a server running a process, be it a website, a calculation, or anything else you can imagine. Often outside of the device’s core functionality though, there are many other things you may be interested in. Information on if the process is still running, what server(s) are running, what errors are occurring in the process, and general information being available externally are common examples of this.

Packet Capture Without "tcpdump" for Go Apps in Kubernetes

Every developer knows there are some utilities that are completely indispensable from their workflows. The programmer’s toolbelt, if you will. These toolbelts are usually different from person to person, but if there is one tool that everyone should use or at least know how to use, it is tcpdump. If you are unfamiliar, tcpdump is a tool that allows you to dump and inspect live network traffic being observed on a network interface.

Scalable event streaming with Redis and Golang

A common problem that our customers have is event streaming spikey traffic to their clients. For example, imagine a server which needs to stream details on cryptocurrency trades. The quantity of trades happening each second is likely to fluctuate, sometimes nothing could happen, other times perhaps thousands. In order to ensure reliable communication, it’s important that rate limits are in place on how many messages are to be sent to subscribed clients.