Библиотека Go (Golang) разработчика
2.63K subscribers
290 photos
96 videos
29 files
354 links
Полезные материалы по всему, что может быть полезно Golang разработчику. По всем вопросам @evgenycarter
Download Telegram
В этой статье представлено TimingWheel в go-zero, которое позволяет разработчикам планировать множество отложенных задач.

https://faun.pub/implement-a-timing-wheel-for-millions-of-concurrent-tasks-942c8d9e4abe

👉 @golang_lib
👍1
Adam_Woodbeck_Network_Programming_with_Go_Learn_to_Code_Secure_and.pdf
3.9 MB
Network Programming with Go: Code Secure and Reliable Network Services from Scratch
Автор: Adam Woodbeck (2021)

В книге описана теория и практика использования Go для написания безопасного, читаемого и готового к работе сетевого кода. В первых главах вы узнаете основы работы в сети и маршрутизации трафика, затем примените полученные знания на практике.
 
По мере продвижения вы изучите сетевые протоколы более высокого уровня и напишете приложения, которые безопасно взаимодействуют с серверами, клиентами и API-интерфейсами по сети с использованием TLS.

Кроме того, вы узнаете фундаментальные основы TCP/IP, методы обеспечения надежности связи на уровне сокетов, способы использования обработчиков и middleware, инструменты для включения аутентификации и шифрования в приложения с использованием TLS, методы сериализации данных для хранения или передачи данных, подходы к настройке приложения для работы в облаке и многое другое.

👉 @golang_lib
👍2
Как Uber сэкономил 70 тысяч ядер благодаря полуавтоматической настройке сборки мусора

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

👉 @golang_lib
👍1
GO приложение в кластере k8s

Kubernetes сегодня — звезда среди систем оркестровки и контейнеризации приложений. Важно понимать, как с ним работать. Поделюсь примером демонстрационного api приложения, которое написано на golang, и покажу способы взаимодействия с ним.

Но сначала — страшная история о том, как я жил без него. Много лет назад, в начале моей карьеры, когда ещё не появился kubernetes, доставка кода до production была весьма проблемной задачей. Бывало так, что создание нового приложения для меня начиналось не с работы в моей любимой IDE, а с заказа процессора, материнской платы, и всё это собиралось вручную. Затем я вставлял сервер в стойку, настраивал порты на cisco L3 маршрутизаторе. И это была только начальная фаза. После этого приходилось новоиспеченную node подключать к кластеру proxmox, накатывать операционную систему, ставить nginx и проводить ещё множество разных настроек.

👉 @golang_lib
👍1
Hands-On High Performance with Go
Автор: Bob Strecansky (2020)

Go - это простой в написании язык, популярный среди разработчиков благодаря своим фичам, таким как параллелизм, переносимость и способность снижать сложность. Эта книга о Golang научит вас создавать идиоматический код Go, который будет многоразовым и высокопроизводительным.

Во время чтения книги вы:
✔️Научитесь эффективно организовывать данные и управлять ими с помощью кластеров и очередей задач;
✔️Изучите часто применяемые структуры данных и алгоритмы Go;
✔️Напишете анонимные функции в Go;
✔️Научитесь развертывать, мониторить и итерировать программы с упором на производительность;
✔️Погрузитесь в управление памятью и параллелизм CPU и GPU в Go.

Скачать

👉 @golang_lib
👍1
Паттерны в Golang

Паттерн Builder в Golang
Директор в паттерне Builder в Golang

👉 @golang_lib
👍3
Media is too big
VIEW IN TELEGRAM
Уроки по Golang - Advanced

REST API. Вебсервер.
REST API. Логирование
REST API. Конфигурация
REST API. MongoDB
REST API. MongoDB. Продолжение
REST API. Middleware. Обработка ошибок
Чистая Архитектура / Clean Architecture Часть 1
Чистая Архитектура / Clean Architecture Часть 2
Чистая Архитектура / Clean Architecture Часть 3
Работаем с PostgreSQL в Golang. Часть 1
Работаем с PostgreSQL в Golang. Часть 2
Работаем с PostgreSQL в Golang. Часть 3
Делаем сортировку для REST API. Используем PostgreSQL и Golang
Дженерики в Golang 1.18
Фильтрация в REST API на Golang и PostgreSQL
ДРУЖБА GOLANG И REACTJS! НАСТРАИВАЕМ CORS

Смотреть на youtube

👉 @golang_lib
👍1
Jon_Bodner_Learning_Go_An_Idiomatic_Approach_to_Real_World_Go_Programming.pdf
3.7 MB
Learning Go: An Idiomatic Approach to Real-World Go Programming
Автор: Jon Bodner (2021)

Go быстро становится предпочтительным языком для создания веб-сервисов. Хотя существует множество туториалов, которые обучают синтаксису Go разработчиков, имеющих опыт работы с другими языками программирования, их все ещё недостаточно. Они не учат идиомам Go, поэтому разработчики в конечном итоге воссоздают шаблоны, которые не имеют смысла в контексте Go. Это практическое руководство предоставляет базовые знания, необходимые для написания понятного и идиоматичного кода.

Во время чтения книги вы:
✔️Узнаете, как писать идиоматичный код на Go;
✔️Поймете причины дизайнерских решений создателей языка;
✔️Настроите среду разработки для одиночного разработчика или команды;
✔️Узнаете, как фичи Go позволяют языку работать эффективно;
✔️Узнаете, какие особенности Go вам следует использовать экономно или не использовать вообще.

👉 @golang_lib
👍2
NNHelper – пакет на языке Go для создания и использования нейронной
сети

Данная статья описывает работу пакета nnhelper, предназначенного для создания и использования нейронных сетей в программах на языке Go.

Если Вы уже знакомы с машинным обучением и используете его в своей работе, то эта статья и описанные в ней примеры могут показаться вам слишком простыми. Если Вы в начале пути и хотите познакомиться с этой темой или вам хотелось бы научиться использовать нейроматрицу в ваших программах на языке Go, то вы попали точно по адресу.

Go пакет nnhelper разработан для быстрого создания нейронной сети и использовании ее в приложениях, написанных на языке Go. Для использования nnhelper не потребуется ничего дополнительного, кроме Go. Пакет nnhelper является надстройкой над пакетом gonn. И это единственная внешняя зависимость.

👉 @golang_lib
👍21
Конкурентность в Go: пять примеров

Традиционно считается, что главная фича Go – это «многопоточность из коробки». Этому посвящено немало статей, авторы которых показывают, какие есть примитивы конкурентности в рамках языка. В процессе изучения этих статей я понял, что на начальном этапе изучения языка мне тяжело начать применять конкурентный код не имея каких-то простых наглядных примеров.

Поэтому я собрал в одной статье наиболее распространенные примеры использования конкурентного кода в Go на основе личного опыта.

👉 @golang_lib
👍4
Быстрый обзор интересных фич Go

Интересные возможности Go, которые могут убедить вас выбрать его в качестве следующего языка в вашем инструментарии

👉 @golang_lib
👍1
Adam_Woodbeck_Network_Programming_with_Go_Learn_to_Code_Secure_and.pdf
3.9 MB
Network Programming with Go
Автор: Adam Woodbeck (2021)

Go сочетает в себе лучшие части многих других языков программирования. Он быстрый, масштабируемый и предназначен для высокопроизводительных сетей и многопроцессорной обработки. Network Programming with Go предназначена для разработчиков, готовых начать использовать Go для написания безопасного, читаемого и готового к работе сетевого кода. По мере продвижения вы будете изучать сетевые протоколы высокого уровня, такие как HTTP и HTTP/2, а затем создавать приложения, которые безопасно взаимодействуют с серверами, клиентами и API-интерфейсами по сети с использованием TLS.
👍3