🥳 Выпущены версии Go 1.21.6 и 1.20.13!
📢 Анонс: https://groups.google.com/g/golang-announce/c/F12eMaUITDs
⬇️ Скачать: https://go.dev/dl/#go1.21.6
#golang
@Golang_google
📢 Анонс: https://groups.google.com/g/golang-announce/c/F12eMaUITDs
⬇️ Скачать: https://go.dev/dl/#go1.21.6
#golang
@Golang_google
👍33🔥3❤1😁1
This media is not supported in your browser
VIEW IN TELEGRAM
OSINT инструмент, написанный на Go, который не поддерживает сбор и анализ информации по опреленном никнейму в сети.
Благодаря данному методу сбора можно построить цепочку всех упоминаний в интернете, в соц сетях, на сайтах и формумах.
go install github.com/theyahya/enola/cmd/enola@latest
▪Github
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16👎7❤3🔥3😁3🤬1
В статье описан довольно элегантный паттерн обработки ошибок, при написании
REST,gRPC
и других сервисов на Go. 📌Читать
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
❤16👍6🤔2👎1🔥1🤬1
Начальный набор для создания веб-сервисов на Go с использованием возможностей Kubernetes.
Проект регулярно обновляется и использует минимальные зависимости, реализует чистый код и следует лучшим практикам программирования на Go.
▪Github
▪Docs
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🔥2❤1
Go - отличный язык для создания высокопроизводительных веб-приложений, а высокопроизводительные веб-приложения часто требуют централизованного кэширования.
Стандартом де-факто для централизованного кэширования является Redis, но, популярные сегодня библиотеки Go не поддерживают потоковую передачу данных, эффективных с точки зрения памяти.
Вместо этого они предлагают
[]byte API,
с которыми вы взаимодействуете следующим образом:// В этом коде используется https://github.com/redis/go-redis, но те же
// ограничения действуют для Rueidis и Redigo.
func redisHandler(w http.ResponseWriter, r *http.Request) {
ctx := context.Background()
// Extract key from RequestURI
key := strings.TrimLeft(r.RequestURI, "/")
// Get the value from Redis as a byte slice
val, err := rdb.Get(ctx, key).Bytes()
if err == redis.Nil {
http.Error(w, "Key not found in Redis", http.StatusNotFound)
return
} else if err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
_, err = w.Write(val)
if err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
}
}
Этот паттерн работает хорошо, если вы кэшируете небольшие объекты, но если вы кэшируете объекты размером более 1 кб, []byte-ориентированные API работют не так хорошо.
В протоколе Redis нет ничего такого, что мешало бы создать потоковый API. Поэтому пердставляем redjet, библиотеку Redis, ориентированную на производительность.
С помощью redjet вы можете написать приведенный выше код следующим образом:
func redisHandler(w http.ResponseWriter, r *http.Request) {
ctx := context.Background()
// Извлечение ключа из RequestURI
key := strings.TrimLeft(r.RequestURI, "/")
// Передаем значение непосредственно из Redis в ответ.
_, err := rdb.Command("GET", key).WriteTo(w)
if err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
}
}
Код стал проще и эффективнее.
go get github.com/coder/redjet@latest
▪Github
▪Читать дальше
▪Бенчмарки
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👍35❤7🔥5👎1🤔1
Быстрая и простая в использовании CDN, на основе Go.
CDN (Content Delivery Network) — это географически распределённая сетевая инфраструктура, обеспечивающая быструю доставку контента пользователям веб-сервисов и сайтов. Входящие в состав CDN cерверы географически располагаются таким образом, чтобы сделать время ответа для пользователей сайта/сервиса минимальным.
В проекте использованы базы данных SQLite с GORM и веб-фреймворком Gin. UI построен с помощью Vite + React и wouter.
▪ Github
▪Docs
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤4🔥3
go install -v github.com/alpkeskin/mosint/v3/cmd/mosint@latest
▪GitHub@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍2🔥1
Учебные материалы по Apache Kafka. Этот репозиторий создан как централизованный ресурс для всех, кто хочет изучить или углубить свои знания об Apache Kafka, независимо от уровня их опыта.
▪ Github
▪ Kafka-go
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18❤8🔥2
Открытый фреймворк для сборки сверхпроизводительных API-шлюзов с мидлваром; ранее известный как фреймворк KrakenD, и основной сервис API-шлюза KrakenD.
▪Github
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍8🔥2🤯1
Zed - это новая модель данных, которая объединяет JSON и реляционные модели, чтобы сделать работу с данными эффективной и простой.
Позволят выполнять молниеносные поисковые и аналитические запросы из командной строки по локальным данным Zed.
▪Github
▪Docs
@Golang_google
Позволят выполнять молниеносные поисковые и аналитические запросы из командной строки по локальным данным Zed.
▪Github
▪Docs
@Golang_google
❤11👍3🥰2🔥1😁1😱1
Please open Telegram to view this post
VIEW IN TELEGRAM
go.dev
Go Wiki: Rangefunc Experiment - The Go Programming Language
❤12🤔8👎4👍1🔥1
#golang
https://blog.carlana.net/post/2024/golang-reflect-type-for/
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍5🔥1🤔1
https://arshsharma.com/posts/2023-10-14-argocd-github-actions-getting-started/
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤7🔥1
Фреймворк представляет собой менеджер и интерпретатор скриптов, который предоставляет функционал и библиотеки для создания мощных инструментов, интегрированных с сервисами, используемыми во время тестов, сканирования уязвимостей и поиска эксплойтов.
Пользователь может создавать собственные модули или использовать скрипты, созданные сообществом.
make install-go-apt
▪Github
▪Docs
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
❤10👍5🔥2🤩2
Инструмент, который авоматизирует и упрощает развертывание и управление кластерами PostgreSQL на Kubernetes.
▪Github
▪Docs
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9🔥4👍1
🔥 Дайджест полезных материалов из мира Golang за неделю
Почитать:
— Go — 100 вопросов/заданий с собеседований
— Machine Learning инженер: что/где/как изучать, чтобы въехать
— Высокопроизводительное кэширование с помощью Redis и Go
— Путь Discord к масштабированию Midjourney до 15 миллионов участников
— Сравниваем форматы сериализации на Go: скорость и удобство
— SOLID и DRY в Go
— RPC на примере gRPC. Когда применять и как работает
— TLS Client Hello — перехватываем и парсим — Nginx + Lua / Go
— Кратко про то, как устроен компилятор Go
— Unraveling the Magic of Golang: A Journey into the Anime-Inspired Realm of Efficient Coding
— Build a Serverless GenAI solution with Lambda, DynamoDB, LangChain and Amazon Bedrock
— Simplify Error Handling with "Try": A JavaScript Library Inspired by Rust and Golang
— Test-Driven Development (TDD), Building 'Hello World' in Go
— Generating Avro Schemas from Go types
— Destiny: A Tool to Manage Cluttered Folders
— Awesome top 5 Posts from last week tagged(#go)
— Understanding Concurrency in Go: A Simple Pipeline Example
— What are the pros of using Go for your backend?
— Format a text in GO better than fmt
Посмотреть:
🌐 Live Dev Levenue.com Go + HTMX + Templ (⏱ 01:49:53)
🌐 Go Web Development With HTMX And Templ (⏱ 02:09:48)
🌐 Junior Developer Coding in Go + HTMX + Templ - DAY 7305 (⏱ 02:19:38)
🌐 Полезно ли изучать С++ для программирования на Go #айти #айтишник #программирование #программист (⏱ 00:53)
🌐 Ушел из Kaspersky Lab спустя месяц работы #айти #айтишник #программирование #программист (⏱ 00:50)
🌐 Я не мог оценивать сроки #айти #программист #программирование #айтишник (⏱ 01:01)
🌐 Structured logging in Go with Slog! Golang LOGGING like a 10x ENGINEER (⏱ 10:41)
🌐 Setup HTMX + HTML Templates in Golang!? HTMX with Fiber (⏱ 08:33)
🌐 Exploring Go 1.22: Unveiling New Features and Anticipating Exciting Changes
Хорошего дня!
@Golang_google
Почитать:
— Go — 100 вопросов/заданий с собеседований
— Machine Learning инженер: что/где/как изучать, чтобы въехать
— Высокопроизводительное кэширование с помощью Redis и Go
— Путь Discord к масштабированию Midjourney до 15 миллионов участников
— Сравниваем форматы сериализации на Go: скорость и удобство
— SOLID и DRY в Go
— RPC на примере gRPC. Когда применять и как работает
— TLS Client Hello — перехватываем и парсим — Nginx + Lua / Go
— Кратко про то, как устроен компилятор Go
— Unraveling the Magic of Golang: A Journey into the Anime-Inspired Realm of Efficient Coding
— Build a Serverless GenAI solution with Lambda, DynamoDB, LangChain and Amazon Bedrock
— Simplify Error Handling with "Try": A JavaScript Library Inspired by Rust and Golang
— Test-Driven Development (TDD), Building 'Hello World' in Go
— Generating Avro Schemas from Go types
— Destiny: A Tool to Manage Cluttered Folders
— Awesome top 5 Posts from last week tagged(#go)
— Understanding Concurrency in Go: A Simple Pipeline Example
— What are the pros of using Go for your backend?
— Format a text in GO better than fmt
Посмотреть:
🌐 Live Dev Levenue.com Go + HTMX + Templ (⏱ 01:49:53)
🌐 Go Web Development With HTMX And Templ (⏱ 02:09:48)
🌐 Junior Developer Coding in Go + HTMX + Templ - DAY 7305 (⏱ 02:19:38)
🌐 Полезно ли изучать С++ для программирования на Go #айти #айтишник #программирование #программист (⏱ 00:53)
🌐 Ушел из Kaspersky Lab спустя месяц работы #айти #айтишник #программирование #программист (⏱ 00:50)
🌐 Я не мог оценивать сроки #айти #программист #программирование #айтишник (⏱ 01:01)
🌐 Structured logging in Go with Slog! Golang LOGGING like a 10x ENGINEER (⏱ 10:41)
🌐 Setup HTMX + HTML Templates in Golang!? HTMX with Fiber (⏱ 08:33)
🌐 Exploring Go 1.22: Unveiling New Features and Anticipating Exciting Changes
Хорошего дня!
@Golang_google
👍13❤8🔥6
🔥Подборка лучших обучающих каналов для программистов.
➡️Делитесь с коллегами и Сохраняйте себе, чтобы не потерять
🛢Базы данных
Sql базы данных
Библиотека баз данных
SQL чат
🏆 Golang
Golang собеседование
Golang вакансии
Golang книги
Golang задачи и тесты
Golang чат
Golang news - новости go
Golang
#️⃣C#
С# академия
С# заметки — код, лучшие практики, заметки программиста c#
С# задачи и тесты
С# библиотека - актуальные бесплатные книги
C# вакансии - работа
⚡Машинное обучение
Machine Learning - полезные статьи новости гайды и разбор кода
Ml Собеседование - подготовка к собеседовению мл, алгоритмам, кодингу
Ml ru - актуальные статьи, новости, код и обучающие материалы
Ml Jobs - вакансии ML
ML Книги - актуальные бесплатные книги МО
ML чат
🚀 Data Science
Анализ данных - полезные фишки, код, гайды и советы, маст-хэв датасаентиста
Data Jobs - ds вакансии
Аналитик данных
Data Science книги - актуальные бесплатные книги
Big data
🐍 Python
Python/django
Python Собеседование - подготовка к собеседовению python и разбор алгоритмов
Pro python - статьи, новости, код и обучающие материалы
Python Jobs - вакансии Python
Python чат
Python книги
☕ Java
Java академия
Java вакансии
Java чат
Java вопросы с собеседований
Java книги
💻 C++
C++ академия
С++ книги
C++ задачи - подготовка к собеседовению мл, алгоритмам
C++ вакансии
💥 Хакинг Kali Linux
Kali linux
linux_kal - kali чат
Информационная безопасность
🐧 Linux
Linux academy
🦀 Rust
Rust программирование
Rust чат
📲 Мобильная разработка
Android разработка
Мобильный разработчик гайды и уроки
🖥 Javascript/React/PHP
Javascript академия
React программирование
PHP
Книги frontend
Задачи frontend
🇬🇧 Английский для программистов
🧠 Искусственный интеллект
ИИ и технологии
Neural - нейросети для работы и жизни
Книги ИИ
Artificial Intelligence
🔥 DevOPs
Devops для программистов
Книги Devops
🌟 Docker/Kubernets
Docker
Kubernets
😂 IT мемы
📓 Книги
Библиотеки Книг для программситов
💼 Папка с вакансиями:
Папка Go разработчика:
Папка Python разработчика:
Папка Data Science
Папка Java разработчика
Папка C#
➡️Делитесь с коллегами и Сохраняйте себе, чтобы не потерять
🛢Базы данных
Sql базы данных
Библиотека баз данных
SQL чат
🏆 Golang
Golang собеседование
Golang вакансии
Golang книги
Golang задачи и тесты
Golang чат
Golang news - новости go
Golang
#️⃣C#
С# академия
С# заметки — код, лучшие практики, заметки программиста c#
С# задачи и тесты
С# библиотека - актуальные бесплатные книги
C# вакансии - работа
⚡Машинное обучение
Machine Learning - полезные статьи новости гайды и разбор кода
Ml Собеседование - подготовка к собеседовению мл, алгоритмам, кодингу
Ml ru - актуальные статьи, новости, код и обучающие материалы
Ml Jobs - вакансии ML
ML Книги - актуальные бесплатные книги МО
ML чат
🚀 Data Science
Анализ данных - полезные фишки, код, гайды и советы, маст-хэв датасаентиста
Data Jobs - ds вакансии
Аналитик данных
Data Science книги - актуальные бесплатные книги
Big data
🐍 Python
Python/django
Python Собеседование - подготовка к собеседовению python и разбор алгоритмов
Pro python - статьи, новости, код и обучающие материалы
Python Jobs - вакансии Python
Python чат
Python книги
☕ Java
Java академия
Java вакансии
Java чат
Java вопросы с собеседований
Java книги
💻 C++
C++ академия
С++ книги
C++ задачи - подготовка к собеседовению мл, алгоритмам
C++ вакансии
💥 Хакинг Kali Linux
Kali linux
linux_kal - kali чат
Информационная безопасность
🐧 Linux
Linux academy
🦀 Rust
Rust программирование
Rust чат
📲 Мобильная разработка
Android разработка
Мобильный разработчик гайды и уроки
🖥 Javascript/React/PHP
Javascript академия
React программирование
PHP
Книги frontend
Задачи frontend
🇬🇧 Английский для программистов
🧠 Искусственный интеллект
ИИ и технологии
Neural - нейросети для работы и жизни
Книги ИИ
Artificial Intelligence
🔥 DevOPs
Devops для программистов
Книги Devops
🌟 Docker/Kubernets
Docker
Kubernets
😂 IT мемы
📓 Книги
Библиотеки Книг для программситов
💼 Папка с вакансиями:
Папка Go разработчика:
Папка Python разработчика:
Папка Data Science
Папка Java разработчика
Папка C#
❤5👍5🥰1
Производительность Redis и атомарность в Golang. Возможности конвейеров, транзакций и Lua-скриптов
Redis — технология, применяемая во многих продуктах. Начать работу с ней и интегрировать в кодовую базу просто, но имеется в Redis функционал и посложнее: конвейеры, транзакции и Lua-скрипты — для повышения производительности и надежности.
НА БЕСПЛАТНОМ УРОВНЕ REDIS-КЛАСТЕРА UPSTASH МОЖНО ИСПОЛЬЗОВАТЬ ДО 10 000 ЗАПРОСОВ В ДЕНЬ — НЕПЛОХОЕ НАЧАЛО.
▪Читать дальше
@Golang_google
Redis — технология, применяемая во многих продуктах. Начать работу с ней и интегрировать в кодовую базу просто, но имеется в Redis функционал и посложнее: конвейеры, транзакции и Lua-скрипты — для повышения производительности и надежности.
НА БЕСПЛАТНОМ УРОВНЕ REDIS-КЛАСТЕРА UPSTASH МОЖНО ИСПОЛЬЗОВАТЬ ДО 10 000 ЗАПРОСОВ В ДЕНЬ — НЕПЛОХОЕ НАЧАЛО.
▪Читать дальше
@Golang_google
👍10❤4👎2🔥2😁1
- Mockery для создания моков для интерфейсов Go
- Schemathesis подойдет для тестов API
- Go-testdeep для запуска продвинутых тестов
- Slang - для анализа кода
- trivy - поиск уязвимостей, неправильной конфигурации, секретов, SBOM в контейнерах, Kubernetes, репозиториях кода, облаках и т. д.
- советы по тестированию.
- Learn Go with Tests
👇Поделитесь в комментариях инструментами, которыми вы пользуютесь.
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍5🔥5
https://golang.withcodeexample.com/blog/golang-benchmarking/
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4🔥3👍2