Category : golang

golang
Простой и универсальный способ чтения логов в терминале

Всем привет! Существует достаточно много решений для локального и удаленного сбора и чтения логов с различных систем. В разные периоды времени как для рабочих задач, так и для домашнего стенда мне приходилось настраивать разные системы, и хочу заметить, что некоторые из них достаточно сложны в своей конфигурации. Одини из самых популярных систем управления логами являются ELK стек, Graylog и Loki, это отличные решения, когда нужно обрабатывать журналы с большого количества машин, но достаточно …

  • среда, 22 января 2025 г. в 00:00:07
golang
Алгоритмы сортировки в Go: простое объяснение и примеры реализации

Сортировка — это процесс упорядочивания элементов в массиве или списке по определенному критерию (например, по возрастанию или убыванию). В программировании это одна из базовых задач, которая помогает эффективно искать, обрабатывать и анализировать данные. Давайте разберем основные алгоритмы сортировки, их принципы работы и сложность на примерах реализации на языке Go.Введение в алгоритмы сортировкиСуществует несколько способов сортировки данных. Основные алгоритмы можно разделить на две катего…

  • среда, 22 января 2025 г. в 00:00:05
golang
Как вынести Go-модуль в open source с сохранением авторства

Так случается, что команда решает вынести часть проекта в open source и использовать ее как внешнюю зависимость. Как правило, это самостоятельный пакет или инструмент, лишенный какой-либо бизнес-специфики, способный принести пользу сообществу и получить дальнейшее развитие. Большинство коммерческих разработчиков имеет персональные профили на открытых платформах и поддерживает собственные портфолио, поэтому при переносе мы хотим сохранить авторство и историю коммитов. Основная сложность здесь в …

  • среда, 22 января 2025 г. в 00:00:04
golang
Готовим слайсы в Go: подробно о динамических массивах, строчках и ускорении

Привет, Хабр! Меня зовут Владислав Белогрудов, я работаю в команде разработки интерфейсов и сервисов управления в YADRO. Мой текущий проект — информационная система на Go. В рамках проекта я подробно изучил, как работать со слайсами — одной из самых популярных структур в Go. На первый взгляд, использовать ее достаточно просто, но, когда берешься писать код, возникают вопросы: как передавать и изменять слайсы, насколько большими их делать.Под катом рассмотрим, что такое слайсы и string (строки) …

  • среда, 22 января 2025 г. в 00:00:03
golang
Going NATS

Все инновации так или иначе будут связаны с глобальными, распределенными системами в которых ключевую роль будут играть периферийные вычисления.Многие из инструментов, которые мы успешно используем для решения текущих задач, могут быть неадекватными для новых вызовов.В качестве примера таких инструментов, можно привести Ansible и SSH. Ansible, как известно использует SSH в качестве основного транспорта для выполнения команд на удаленных машинах. Это своего рода RPC для системных администраторов…

  • вторник, 21 января 2025 г. в 00:00:09
golang
Cоздание Приватной Сети Блокчейн на Go. Часть 1

Привет, Хабр!Меня зовут Олег, я работаю разработчиком в одной крупной IT-компании и недавно в разговоре со знакомыми логистами, я узнал, что у них в штате работает блокчейн-специалист. Для меня мир логистики был максимально далек от цепочки блоков, как и цепочка блоков от меня, поэтому я решил погрузиться в эту технологию.Прочитав множество статей и несколько книг, я выяснил, что теория с практикой идут рядышком, но понимание того, как же блокчейн работает на самом деле, не пришло, поэтому было…

  • понедельник, 20 января 2025 г. в 00:00:07
golang
Go: тонкости профилирования CPU

ВведениеНа тему профилирования CPU написано много статей. Тем не менее, эта тема обычно рассматривается в контексте конкретных задач, проблемы которых затеняют некоторые тонкости. Это может вызвать трудности или привести к ошибочному выводу при анализе собственного решения. В этой статье нет примера успешной оптимизации какого-нибудь невероятного кода, но на простейших примерах объясняется, какую информацию может дать профиль CPU и как ей воспользоваться. А также подсвечиваются некоторые тонкос…

  • воскресенье, 19 января 2025 г. в 00:00:07
golang
Go в GUI, я создал

Идея сделать игру под Android на Go была неоднозначной, но интересной. Я легко мог представить Go не только в привычной для него сервисной нише, но и в прикладной — его кросс-платформенность и близость к системному уровню в сочетании с простотой пришлись бы там очень кстати. И вот мы здесь — игру мечты я пока не создал, но пару игр попроще сделать удалось.В этой статье я хочу рассказать об инструментах, появившихся по ходу работы. Сами инструменты я объединил в библиотеку Youngine и опубликовал…

  • суббота, 18 января 2025 г. в 00:00:14
golang
Так ли плох Go в глазах C++ разработчика: пишем микросервис и учимся на ошибках

Миллионы пользователей ежедневно заходят на Яндекс Маркет. И одна из ключевых задач сервиса — показывать им точные сроки доставки на поиске и в корзине. При пиковых нагрузках это около 40 тысяч запросов в секунду. Как обеспечить столь быструю и точную обработку данных о доставке?Привет, Хабр! Меня зовут Никита Деревянко. Я руковожу разработкой логистической платформы Яндекс Маркета. Люблю играть в шахматы, бильярд и программировать. Изучаю японский язык, чтобы тренировать мозг и смотреть аниме …

  • суббота, 18 января 2025 г. в 00:00:14