Go Library
4.2K subscribers
17 photos
63 files
854 links
Go (Golang) Library

Реклама: @ostinostin
Контент: @mxssl
Download Telegram
Starving, sleeping, and yielding: understanding Go's scheduler

https://bitfieldconsulting.com/posts/starving
3 Critical TTL Patterns for In-Memory Caching

Most caching libraries get TTL expiration wrong. They focus on per-key complexity while missing the patterns that actually prevent production outages.


https://samuelberthe.substack.com/p/3-critical-ttl-patterns-for-in-memory
Go's builtin 'new()' function will take an expression in Go 1.26

https://utcc.utoronto.ca/~cks/space/blog/programming/GoNewWithExpression
Register allocation in the Go compiler

As a maintainer of the GCC register allocator (RA), I naturally have a keen interest in the register allocators used in various industrial compilers. For some compilers, like LLVM and Cranelift, there is sufficient documentation, including papers and presentations, to gain a deep understanding of their register allocators (RAs).

Unfortunately, this is not the case for the Go compiler. To gather information about the RA in the Go compiler, I had to delve into its source code. This article outlines my findings.


https://vnmakarov.github.io/2024/09/24/register-allocation-in-the-go-compiler.html
slice tails don't grow forever

In a garbage collected language, one needs to be cautious about leaks caused by errant references, but caution can turn to paranoia. In go, I like to make little fifo queues by appending to the tail of a slice. But does this grow forever?


https://flak.tedunangst.com/post/slice-tails-dont-grow-forever
excelize

Excelize is a library written in pure Go providing a set of functions that allow you to write to and read from XLAM / XLSM / XLSX / XLTM / XLTX files.


We are pleased to announce the release of version 2.10.0. Featured are a handful of new areas of functionality and numerous bug fixes.


https://github.com/qax-os/excelize/releases/tag/v2.10.0
failsafe-go

Failsafe-go is a library for building resilient, fault tolerant Go applications. It works by wrapping functions with one or more resilience policies, which can be combined and composed as needed.


https://github.com/failsafe-go/failsafe-go
pegomock

PegoMock is a mocking framework for the Go programming language. It integrates well with Go's built-in testing package, but can be used in other contexts too. It is based on golang/mock, but uses a DSL closely related to Mockito.


https://github.com/petergtz/pegomock
shiori

Shiori is a simple bookmarks manager written in the Go language. Intended as a simple clone of Pocket. You can use it as a command line application or as a web application. This application is distributed as a single binary, which means it can be installed and used easily.


https://github.com/go-shiori/shiori
This media is not supported in your browser
VIEW IN TELEGRAM
1 ноября в Москве Яндекс проводит митап по для разработчиков и энтузиастов GO

Встречаемся в уютной атмосфере, чтобы обсудить всё, что волнует сообщество: от свежих релизов и инструментов до архитектурных решений и производительности сервисов.

В программе выступлений:

— Игорь Панасюк, разработчик бэкенда Плюса и Финтеха, разберёт, как устроен garbage collector в Go 1.25, какие подходы применяются в управлении памятью и какое влияние он окажет на ваши сервисы;

— Степан Пестерников, СТО Яндекс Игр, покажет, как используют KV-хранилища и кеши в Яндекс Играх;

— Александр Никитин, старший разработчик бэкенда Яндекс Маркета, расскажет, как с помощью Debug Tree прямо в продакшене разобраться, как работает сложная многопоточная кодовая база с большим объёмом данных.

Все темы докладов можно посмотреть на сайте.

Гостей, которые придут очно, ждет нетворкинг в перерывах между докладами и круглые столы по темам от AI-инструментов до будущего языка. Для тех, кто не сможет посетить митап лично, будет доступна онлайн-трансляция докладной части.

Зарегистрироваться можно здесь 👈
How to reproduce and fix an I/O data race with Go and DTrace

https://gaultier.github.io/blog/how_to_reproduce_and_fix_an_io_data_race_with_dtrace.html
qjs

QJS is a CGO-Free, modern, secure JavaScript runtime for Go applications, built on the powerful QuickJS engine and Wazero WebAssembly runtime.

QJS allows you to run JavaScript code safely and efficiently, with full support for ES2023 features, async/await, and Go-JS interoperability.


https://github.com/fastschema/qjs
Breaking down Go's sync package

In my opinion, Go provides excellent support for concurrent work, not only due to goroutines but also because of the language’s ecosystem. A great example of this is the sync package, which helps synchronize concurrent routines. In this post, we’ll dive into everything this package has to offer.


https://mfbmina.dev/en/posts/2025-09-19_sync-break-down/
yzma

yzma lets you use Go to perform local inference with Vision Language Models (VLMs), Large Language Models (LLMs), Small Language Models (SLMs), and Tiny Language Models (TLMs) by using the llama.cpp libraries all running on your own hardware.


https://github.com/hybridgroup/yzma
monigo

MoniGo is a performance monitoring library for Go applications. It provides real-time insights into application performance with an intuitive user interface, enabling developers to track and optimize both service-level and function-level metrics.


https://github.com/iyashjayesh/monigo
kubo

Kubo was the first IPFS implementation and is the most widely used one today. Implementing the Interplanetary Filesystem - the standard for content-addressing on the Web, interoperable with HTTP. Thus powered by future-proof data models and the libp2p for network communication. Kubo is written in Go.


https://github.com/ipfs/kubo
flint

Flint is a modern, self-contained KVM management tool built for developers, sysadmins, and home labs who want zero bloat and maximum efficiency. It was built in a few hours out of a sudden urge for something better.


https://github.com/volantvm/flint
runtime-radar

Runtime Radar is an open-source solution for monitoring runtime security events and responding to incindents in containerized environments.


https://github.com/Runtime-Radar/runtime-radar
1