Komari - это минималистичный, self-hosted инструмент для мониторинга производительности серверов.
Никаких лишних зависимостей и громоздких панелей — только то, что нужно для быстрой диагностики и стабильности.
💡 Особенности:
- Написан на Go — быстрый, лёгкий, кроссплатформенный
- Простая установка и локальный запуск
- Мониторинг нагрузки, памяти, CPU и сетевых показателей
- Удобный web-интерфейс без лишнего шума
📦 Идеален для разработчиков, DevOps и тех, кто хочет контролировать состояние своих серверов без лишних облачных сервисов.
🔗 Репозиторий: https://github.com/komari-monitor/komari
@Golang_google
#golang #monitoring #devops #opensource
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤10😁8🔥7😱2
This media is not supported in your browser
VIEW IN TELEGRAM
Шардирование или шардинг — это принцип проектирования базы данных, при котором данные разбиваются на части и размещаются на разных шардах.
Интерактивный лонгрид по шардированию баз данных.
В нем разобрано все - от принципов работы шардов и причин, зачем это вообще нужно, до тонкостей проектирования и типовых ошибок.
Каждый раздел сопровождается интерактивными диаграммами, с которыми можно экспериментировать прямо в статье.
Отличный материал, чтобы прокачать понимание распределённых БД на выходных 💡
👉 Отличное чтиво на выходные
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥36👍10🥰3❤1
⚙️ **Gthulhu: планировщик для облачных систем**
Gthulhu - это современный планировщик задач, созданный специально для cloud-native инфраструктуры.
Он написан на Golang и работает на фреймворке qumun.
Название вдохновлено Лафкравстовским Ктулху - с множеством щупалец, которые могут управлять и направлять.
Точно так же Gthulhu помогает “управлять щупальцами” распределённой системы - контролируя множество процессов и контейнеров в облаке.
Это как Kubernetes, только с акцентом на умное распределение ресурсов и высокую скорость реакции.
👉 GitHub: https://github.com/Gthulhu/Gthulhu
Gthulhu - это современный планировщик задач, созданный специально для cloud-native инфраструктуры.
Он написан на Golang и работает на фреймворке qumun.
Название вдохновлено Лафкравстовским Ктулху - с множеством щупалец, которые могут управлять и направлять.
Точно так же Gthulhu помогает “управлять щупальцами” распределённой системы - контролируя множество процессов и контейнеров в облаке.
Это как Kubernetes, только с акцентом на умное распределение ресурсов и высокую скорость реакции.
👉 GitHub: https://github.com/Gthulhu/Gthulhu
👍8🔥7❤5
🔧 go-htmx-starter — быстрый старт проекта с Go + HTMX
Готовая база для веб-приложения на HTMX + Go.
Основные особенности:
- Комбинация Go-бэкенда с HTMX-фронтэндом: минимальное количество JS-файлов и максимум работы через HTML-атрибуты.
- Использование шаблонов сервера (templating) для рендеринга ответов.
- Подход, который позволяет быстро развернуть CRUD-или другой веб-интерфейс без тяжёлых фронтенд-фреймворков.
- Хороший выбор для начального проекта или прототипа, когда важна скорость разработки и простота.
https://github.com/carsonkrueger/go-htmx-starter
@Golang_google
Готовая база для веб-приложения на HTMX + Go.
Основные особенности:
- Комбинация Go-бэкенда с HTMX-фронтэндом: минимальное количество JS-файлов и максимум работы через HTML-атрибуты.
- Использование шаблонов сервера (templating) для рендеринга ответов.
- Подход, который позволяет быстро развернуть CRUD-или другой веб-интерфейс без тяжёлых фронтенд-фреймворков.
- Хороший выбор для начального проекта или прототипа, когда важна скорость разработки и простота.
https://github.com/carsonkrueger/go-htmx-starter
@Golang_google
🔥18👍8❤5🤔3
Он защищает веб-приложения от различных типов атак, таких как SQL-инъекции, XSS и др., фильтруя потенциально опасные запросы.
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤4🔥3
🫖 Новый пост в официальном блоге GO: Green Tea GC - новый сборщик мусора в Go 1.25
В Go 1.25 появился экспериментальный сборщик мусора Green Tea GC, который уже используется внутри Google.
Он снижает время, проводимое в GC, примерно на 10%, а в отдельных сценариях - до 40%.
Активировать можно при сборке флагом:
📘 Как это работает:
▪ Классический mark-sweep в Go обходит граф объектов и помечает живые узлы, но делает это неэффективно: память фрагментирована, обращения случайны, кэш часто промахивается.
▪ Green Tea решает проблему, он обрабатывает кучу по компактным блокам (spans), сохраняя пространственную локальность и уменьшая межъядерные переходы.
▪ Это делает GC более предсказуемым и дружелюбным к CPU-кэшу.
💡 Что изменилось внутри рантайма:
- Объекты группируются по размеру в страницы (pages) и спаны.
- Маркер обходит память блоками, а не «прыгает» по указателям.
- Очереди задач GC выстраиваются так, чтобы кэш был «тёплым».
📊 Что показывают тесты:
- Большинство программ тратят меньше времени на GC.
- В реальных нагрузках - до 40% ускорения.
- В некоторых случаях применение почти ничего не дает, поэтому важно тестировать на своих данных.
Green Tea уже признан production-ready, и команда Go планирует сделать его GC по умолчанию в Go 1.26.
В целом, Green Tea GC делает сборку мусора в Go быстрее и стабильнее за счёт лучшей локальности и оптимизации доступа к памяти. Это первый серьёзный шаг к более эффективному, «кэше-дружелюбному» GC в Go.
⚡️ Подробнее - https://go.dev/blog/greenteagc
⚡️Видео: https://www.youtube.com/watch?v=he5PfBfte2c
@Golang_google
В Go 1.25 появился экспериментальный сборщик мусора Green Tea GC, который уже используется внутри Google.
Он снижает время, проводимое в GC, примерно на 10%, а в отдельных сценариях - до 40%.
Активировать можно при сборке флагом:
GOEXPERIMENT=greenteagc go build ./...
📘 Как это работает:
▪ Классический mark-sweep в Go обходит граф объектов и помечает живые узлы, но делает это неэффективно: память фрагментирована, обращения случайны, кэш часто промахивается.
▪ Green Tea решает проблему, он обрабатывает кучу по компактным блокам (spans), сохраняя пространственную локальность и уменьшая межъядерные переходы.
▪ Это делает GC более предсказуемым и дружелюбным к CPU-кэшу.
💡 Что изменилось внутри рантайма:
- Объекты группируются по размеру в страницы (pages) и спаны.
- Маркер обходит память блоками, а не «прыгает» по указателям.
- Очереди задач GC выстраиваются так, чтобы кэш был «тёплым».
📊 Что показывают тесты:
- Большинство программ тратят меньше времени на GC.
- В реальных нагрузках - до 40% ускорения.
- В некоторых случаях применение почти ничего не дает, поэтому важно тестировать на своих данных.
Green Tea уже признан production-ready, и команда Go планирует сделать его GC по умолчанию в Go 1.26.
В целом, Green Tea GC делает сборку мусора в Go быстрее и стабильнее за счёт лучшей локальности и оптимизации доступа к памяти. Это первый серьёзный шаг к более эффективному, «кэше-дружелюбному» GC в Go.
⚡️ Подробнее - https://go.dev/blog/greenteagc
⚡️Видео: https://www.youtube.com/watch?v=he5PfBfte2c
@Golang_google
👍44🔥12❤8🤬1
🗂️ qwe - Легкая система контроля версий для файлов
Инструмент предлагает простой и быстрый способ отслеживания изменений в отдельных файлах.
Позволяет группировать файлы для совместного коммита или отката, что делает управление версиями интуитивно понятным и эффективным.
🚀 Основные моменты:
- Отслеживание версий отдельных файлов
- Легкие коммиты и откаты
- Групповое управление файлами
- Минимальная настройка и высокая скорость
📌 GitHub: https://github.com/mainak55512/qwe
@Golang_google
#go #golang
Инструмент предлагает простой и быстрый способ отслеживания изменений в отдельных файлах.
Позволяет группировать файлы для совместного коммита или отката, что делает управление версиями интуитивно понятным и эффективным.
🚀 Основные моменты:
- Отслеживание версий отдельных файлов
- Легкие коммиты и откаты
- Групповое управление файлами
- Минимальная настройка и высокая скорость
📌 GitHub: https://github.com/mainak55512/qwe
@Golang_google
#go #golang
👍10❤6🔥5
Проект ArchRiot пытается переосмыслить классический Arch:
— установка через Go-based installer
— обновления и управление системой тоже на Go
— цель проекта - стабильный rolling-release без боли и ломаний
Идея проста: взять дух Arch, но сделать его более удобным, эффективныи и современным по tooling'у.
Интересный эксперимент для тех, кто любит Arch, но хочет больше автоматизации и меньше ручной магии в bash.
🔗 archriot.org
@Golang_google
#linux #golang #archlinux
Please open Telegram to view this post
VIEW IN TELEGRAM
❤42🔥15👍8🤔6😁4
🛠 Как Go понимает ваш код: разбор статьи «The Go Parser»
Внутри компилятора Go после лексера идёт следующий этап - парсер. Он принимает поток токенов и превращает его в абстрактное синтаксическое дерево (AST).
Что делает парсер
- проверяет соответствие кода грамматике Go
- строит AST: функции, выражения, блоки, импорты
- готовит структуру для семантического анализа и генерации кода
Как он работает
- читает токены и смотрит вперёд (lookahead), чтобы решить, что разбирать
- вызывает функции вроде parseFile / parseDecl / parseExpr
- следит за областями видимости и комментариями
- начинает с package → imports → объявления
Пример: даже простой hello-world превращается в дерево, где есть узлы для пакета, функции main, вызова fmt.Println и строкового литерала. Это и есть «скелет» программы, который потом пройдёт проверку типов и оптимизации.
Парсер - это фундамент. Он ловит синтаксические ошибки, создаёт структуру рассуждений для компилятора и позволяет инструментам понимать код как данные. Это точка входа в мир статического анализа и построения своих утилит.
👉 Подробнее
@Golang_google
Внутри компилятора Go после лексера идёт следующий этап - парсер. Он принимает поток токенов и превращает его в абстрактное синтаксическое дерево (AST).
Что делает парсер
- проверяет соответствие кода грамматике Go
- строит AST: функции, выражения, блоки, импорты
- готовит структуру для семантического анализа и генерации кода
Как он работает
- читает токены и смотрит вперёд (lookahead), чтобы решить, что разбирать
- вызывает функции вроде parseFile / parseDecl / parseExpr
- следит за областями видимости и комментариями
- начинает с package → imports → объявления
Пример: даже простой hello-world превращается в дерево, где есть узлы для пакета, функции main, вызова fmt.Println и строкового литерала. Это и есть «скелет» программы, который потом пройдёт проверку типов и оптимизации.
Парсер - это фундамент. Он ловит синтаксические ошибки, создаёт структуру рассуждений для компилятора и позволяет инструментам понимать код как данные. Это точка входа в мир статического анализа и построения своих утилит.
👉 Подробнее
@Golang_google
🔥15👍10❤8😁1
🎆 Вышли версии 1.25.4 и 1.24.10!
📰 Анонс: https://groups.google.com/g/golang-announce/c/tVVHm9gnwl8/m/-oTvYIjCAQAJ
⬇️ Скачать: https://go.dev/dl/#go1.25.4
@Golang_google
#golang #go
📰 Анонс: https://groups.google.com/g/golang-announce/c/tVVHm9gnwl8/m/-oTvYIjCAQAJ
⬇️ Скачать: https://go.dev/dl/#go1.25.4
@Golang_google
#golang #go
👍13❤6🔥4😢1
😱 Хаос из REST, gRPC и Swagger в проекте? Пора навести порядок. На открытом уроке от OTUS вы узнаете, как построить микросервисную архитектуру, где всё работает согласованно — на основе единой схемы proto3.
👨💻 Эксперт покажет, как из одной proto-схемы автоматически генерировать gRPC, API-Gateway и Swagger — без ручных правок и бесконечных конфликтов версий. Вы разберётесь, как правильно структурировать проект, настраивать protoc и плагины, подключать HTTP-аннотации и создавать понятную документацию.
❗️ После урока вы сможете собрать рабочий шаблон микросервиса на Go, где gRPC обслуживает внутренние вызовы, REST — внешние, а Swagger — интеграцию и тестирование. Всё из одной схемы.
📅 12 ноября в 20:00 МСК. Открытый вебинар проходит в преддверии старта курса «Микросервисы на Go». Регистрируйтесь и узнайте, как превратить сложную архитектуру в управляемую систему: https://otus.pw/fAj3/?erid=2W5zFJpkqE8
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
👨💻 Эксперт покажет, как из одной proto-схемы автоматически генерировать gRPC, API-Gateway и Swagger — без ручных правок и бесконечных конфликтов версий. Вы разберётесь, как правильно структурировать проект, настраивать protoc и плагины, подключать HTTP-аннотации и создавать понятную документацию.
❗️ После урока вы сможете собрать рабочий шаблон микросервиса на Go, где gRPC обслуживает внутренние вызовы, REST — внешние, а Swagger — интеграцию и тестирование. Всё из одной схемы.
📅 12 ноября в 20:00 МСК. Открытый вебинар проходит в преддверии старта курса «Микросервисы на Go». Регистрируйтесь и узнайте, как превратить сложную архитектуру в управляемую систему: https://otus.pw/fAj3/?erid=2W5zFJpkqE8
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
❤1😁1
🌀 Flint: Удобное управление KVM
Flint — это легкий инструмент для управления KVM с современным веб-интерфейсом, CLI и API. Он создан для разработчиков и системных администраторов, стремящихся к максимальной эффективности без лишнего бремени. Всего 11 МБ и никаких XML!
🚀 Основные моменты:
- Современный и отзывчивый интерфейс
- Один бинарный файл без контейнеров
- Мощный CLI и API для автоматизации
- Поддержка Cloud-Init и шаблонов
- Многоуровневая безопасность с защитой паролем
📌 GitHub: https://github.com/volantvm/flint
#go
Flint — это легкий инструмент для управления KVM с современным веб-интерфейсом, CLI и API. Он создан для разработчиков и системных администраторов, стремящихся к максимальной эффективности без лишнего бремени. Всего 11 МБ и никаких XML!
🚀 Основные моменты:
- Современный и отзывчивый интерфейс
- Один бинарный файл без контейнеров
- Мощный CLI и API для автоматизации
- Поддержка Cloud-Init и шаблонов
- Многоуровневая безопасность с защитой паролем
📌 GitHub: https://github.com/volantvm/flint
#go
👍14🥰1🤬1
📦 runtime-radar - инструмент для обеспечения безопасности контейнерных сред, написанный на Go
runtime-radar — это открытое решение для мониторинга безопасности и реагирования на инциденты в контейнеризированных средах. Решение основано на проекте tetragon, использующем eBPF для мониторинга системы.
💡 Особенности:
- Простая установка и запуск
- Удобный UI, позволяющий настраивать правила безопасности и реагирования, а также расследовать инциденты
- Возможность управлять несколькими кластерами через единый интерфейс
- Поддержка алертинга через различные каналы (SMTP, Syslog, Webhook)
- Широкий набор готовых политик мониторинга и правил безопасности
- Возможность написания кастомных правил безопасности на Go (планируется поддержка других языков, компилируемых в WebAssembly)
Идеален для DevOps, экспертов по безопасности и тех, кто хочет обеспечить безопасность своих Kubernetes-кластеров.
🔗 Репозиторий: https://github.com/runtime-radar/runtime-radar
@Golang_google
runtime-radar — это открытое решение для мониторинга безопасности и реагирования на инциденты в контейнеризированных средах. Решение основано на проекте tetragon, использующем eBPF для мониторинга системы.
💡 Особенности:
- Простая установка и запуск
- Удобный UI, позволяющий настраивать правила безопасности и реагирования, а также расследовать инциденты
- Возможность управлять несколькими кластерами через единый интерфейс
- Поддержка алертинга через различные каналы (SMTP, Syslog, Webhook)
- Широкий набор готовых политик мониторинга и правил безопасности
- Возможность написания кастомных правил безопасности на Go (планируется поддержка других языков, компилируемых в WebAssembly)
Идеален для DevOps, экспертов по безопасности и тех, кто хочет обеспечить безопасность своих Kubernetes-кластеров.
🔗 Репозиторий: https://github.com/runtime-radar/runtime-radar
@Golang_google
👍12❤10🥰4🤔2
Go для продолжающих и свитчеров
Курс от ex-Google SRE для максимально быстрого профессионального погружения в Go – для тех, кто уже программирует и не хочет тратить время на изучение основ.
🌐 В программе курса:
▪️Принципы Go-разработки: компиляция, обработка ошибок, механизм defer, многопоточность с общей памятью, асинхронная работа с сетью, структура проекта, сборка и деплой
▪️Go на практике: типы, интерфейсы, слайсы, каналы, работа с вводом/выводом, «сырыми» сокетами, логирование, HTTP, Redis, Postgres.
▪️Как писать сервисы с использованием каналов и gRPC, автоматические тесты, избегать анти-паттернов из других языков (PHP/Python/Java) и строить чистый код на Go
▪️Многопоточность и низкоуровневые возможности: mutex, WaitGroup, race detector, cgo, параметры runtime (GOMAXPROCS, GOGC, GOMEMLIMIT, GODEBUG), профилирование CPU и heap
▪️Высокопроизводительные сервисы: архитектура многопоточности, влияние архитектуры памяти и процессора на Go-код, оптимизация под нагрузку – всё в контексте профессиональной разработки
🥸 Кто мы: R&D-центр Devhands.io, наш канал. Автор курса – Юрий Насрединов, работал SRE/программистом в Google Cloud, Badoo/Bumble, VK. Сейчас работает Production Engineer в хэдж-фонде в Лондоне.
🗓 Старт курса: 18 ноября, 21:00, 5 недель обучения.
Изучить программу и записаться можно здесь.
Ждем вас!
Реклама. ИП Рыбак А.А. ИНН 771407709607 Erid: 2VtzqwniJsh
Курс от ex-Google SRE для максимально быстрого профессионального погружения в Go – для тех, кто уже программирует и не хочет тратить время на изучение основ.
▪️Принципы Go-разработки: компиляция, обработка ошибок, механизм defer, многопоточность с общей памятью, асинхронная работа с сетью, структура проекта, сборка и деплой
▪️Go на практике: типы, интерфейсы, слайсы, каналы, работа с вводом/выводом, «сырыми» сокетами, логирование, HTTP, Redis, Postgres.
▪️Как писать сервисы с использованием каналов и gRPC, автоматические тесты, избегать анти-паттернов из других языков (PHP/Python/Java) и строить чистый код на Go
▪️Многопоточность и низкоуровневые возможности: mutex, WaitGroup, race detector, cgo, параметры runtime (GOMAXPROCS, GOGC, GOMEMLIMIT, GODEBUG), профилирование CPU и heap
▪️Высокопроизводительные сервисы: архитектура многопоточности, влияние архитектуры памяти и процессора на Go-код, оптимизация под нагрузку – всё в контексте профессиональной разработки
Изучить программу и записаться можно здесь.
Ждем вас!
Реклама. ИП Рыбак А.А. ИНН 771407709607 Erid: 2VtzqwniJsh
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6🔥4👍3
🚀 Быстрый линтер OpenAPI и Swagger
Vacuum — это легкий и супербыстрый линтер для OpenAPI, написанный на Go. Он совместим с правилами Spectral и предлагает автоисправление для пользовательских правил. Идеален для проверки качества спецификаций API.
🚀Основные моменты:
- Поддержка автоисправления ошибок в спецификациях
- Совместимость с существующими правилами Spectral
- Легкий и быстрый инструмент для CI/CD
- Многофункциональный интерфейс командной строки
- Поддержка Docker и различных платформ
📌 GitHub: https://github.com/daveshanley/vacuum
#go
Vacuum — это легкий и супербыстрый линтер для OpenAPI, написанный на Go. Он совместим с правилами Spectral и предлагает автоисправление для пользовательских правил. Идеален для проверки качества спецификаций API.
🚀Основные моменты:
- Поддержка автоисправления ошибок в спецификациях
- Совместимость с существующими правилами Spectral
- Легкий и быстрый инструмент для CI/CD
- Многофункциональный интерфейс командной строки
- Поддержка Docker и различных платформ
📌 GitHub: https://github.com/daveshanley/vacuum
#go
❤5👍4🔥3