Golang
admin - @haarrp https://t.me/golangl - golang чат https://t.me/golangtests go тесты https://t.me/ai_machinelearning_big_data машинное обучение @itchannels_telegram РКН: clck.ru/3Fmx3s #VRHSZ
نمایش بیشتر📈 تحلیل کانال تلگرام Golang
کانال Golang (@golang_google) در بخش زبانی روسی بازیگری فعال است. در حال حاضر جامعه شامل 40 453 مشترک است و جایگاه 3 321 را در دسته فناوری و برنامهها و رتبه 15 578 را در منطقه روسيا دارد.
📊 شاخصهای مخاطب و پویایی
از زمان ایجاد در невідомо، پروژه رشد سریعی داشته و 40 453 مشترک جذب کرده است.
بر اساس آخرین دادهها در تاریخ 07 نوامبر, 2026، کانال فعالیت پایداری دارد. در ۳۰ روز گذشته تغییر اعضا برابر 8 و در ۲۴ ساعت گذشته برابر -22 بوده و همچنان دسترسی گستردهای حفظ شده است.
- وضعیت تأیید: تأیید نشده
- نرخ تعامل (ER): میانگین تعامل مخاطب 17.62% است و در ۲۴ ساعت نخست پس از انتشار، محتوا معمولاً 8.98% واکنش نسبت به کل مشترکان کسب میکند.
- دسترسی پستها: هر پست به طور میانگین 7 129 بازدید دریافت میکند. در اولین روز معمولاً 3 634 بازدید جمعآوری میشود.
- واکنشها و تعامل: مخاطبان بهطور فعال حمایت میکنند؛ میانگین واکنش به هر پست 25 است.
- علایق موضوعی: محتوا بر موضوعات کلیدی مانند golang, api, devops, github, аллокация تمرکز دارد.
📝 توضیح و سیاست محتوایی
نویسنده این فضا را محل بیان دیدگاههای شخصی توصیف میکند:
“admin - @haarrp
https://t.me/golangl - golang чат
https://t.me/golangtests go тесты
https://t.me/ai_machinelearning_big_data машинное обучение
@itchannels_telegram
РКН: clck.ru/3Fmx3s
#VRHSZ”
به لطف بهروزرسانیهای پرتکرار (آخرین داده در تاریخ 08 نوامبر, 2026)، کانال همواره بهروز و دارای دسترسی بالاست. تحلیلها نشان میدهد مخاطبان بهطور فعال با محتوا تعامل دارند و آن را به نقطه اثرگذاری مهم در دسته فناوری و برنامهها تبدیل کردهاند.
encoding/json/v2 и encoding/json/jsontext. Новые пакеты теперь доступны в Go 1.27 без экспериментальных флагов.
Старый encoding/json существовал ещё до Go 1.0, но за годы накопил проблемы с производительностью, безопасностью и обработкой данных.
Что изменилось:
- JSON с повторяющимися ключами теперь по умолчанию вызывает ошибку.
- Некорректный UTF-8 больше не принимается молча.
- Сопоставление JSON-ключей с полями структур стало чувствительным к регистру.
- nil`-срезы сериализуются в `[], а nil`-map в `{}, вместо null.
- Появилась полноценная потоковая обработка JSON без необходимости буферизовать значение целиком.
Новый API также позволяет передавать настройки непосредственно в Marshal и Unmarshal.
Например:
import "encoding/json/v2"
type User struct {
Name string `json:"name"`
Age int `json:"age"`
}
data, err := json.Marshal(User{
Name: "Alex",
Age: 25,
})
Для потоковой работы добавили MarshalWrite, UnmarshalRead и отдельный пакет jsontext, который умеет читать и записывать JSON на уровне токенов.
А что с производительностью?
По измерениям разработчиков, скорость Marshal примерно соответствует старой реализации. Основные улучшения связаны с декодированием, потоковой обработкой и сокращением лишних аллокаций.
Старый encoding/json никуда не исчезает и продолжит поддерживаться. Переход на v2 добровольный, но стоит учитывать изменившееся поведение при сериализации и разборе JSON.
Разработка нового API заняла около шести лет.
Технический разбор: https://go.dev/blog/jsonv2//go:embed, позволяющий включать HTML, CSS, SQL-миграции и другие файлы непосредственно в исполняемый файл.
import "embed"
//go:embed static/*
var files embed.FS
После сборки приложению не нужна отдельная папка со статикой. Но как это реализовано?
В статье разобрали весь путь файла через Go 1.27.1.
Сначала go build находит директивы //go:embed и определяет подходящие файлы. Затем формирует JSON-конфигурацию embedcfg и передаёт её компилятору.
Компилятор записывает содержимое файлов в статические данные, а линкер собирает их вместе с кодом в исполняемый файл. При запуске embed.FS позволяет читать эти данные через привычный интерфейс fs.FS.
Есть несколько нюансов:
- //go:embed static рекурсивно включает каталог, но пропускает файлы с префиксами . и _.
- //go:embed all:static включает и скрытые файлы.
- Данные не сжимаются автоматически.
- Изменения файлов после сборки не отражаются в бинарнике.
Автор прошёлся по исходникам компилятора и линкера Go, показал устройство embed.FS и объяснил, как данные попадают в память.
https://internals-for-interns.com/posts/how-go-embed-works/.tldr, совместимые с tldraw, хотя некоторые возможности пока не поддерживаются.
Попробовать можно одной командой:
go run . examples/showcase.tldr
Для Go-разработчиков репозиторий интересен ещё и как пример реализации canvas-редактора с undo/redo, кешированием отрисовки и собственной системой документов без веб-стека.
https://github.com/egoist/godraw📂 Дима проведёт собес с разработчиком-добровольцем и предложит ему вопросы и задачи из реальных технических интервью. Участник не будет знать их заранее 📂 После каждого ответа разберёт его сильные и слабые стороны и объяснит, что важно для интервьюера 📂 В конце сможешь задать Диме свои вопросы и получить развёрнутые ответыЭфир проходит в рамках менторской программы ШОРТКАТ для Go-разработчиков, которые хотят сменить работу, вырасти в грейде и зарплате 🎁 За регистрацию подарим файл с эталонными ответами на 50 сложных вопросов с Go-собеседований Переходи в бота, чтобы зарегистрироваться на эфир и забрать подарок 👉 @shortcut_go_bot Реклама. О рекламодателе.
net.Listen("tcp", ":8080") может задействовать этот механизм без явного включения разработчиком.
Ошибка находится в ядре Linux, а Go может создавать условия для показанного варианта атаки.
Отключить MPTCP по умолчанию для Go-приложения можно так:
GODEBUG=multipathtcp=0 ./server
Но явный SetMultipathTCP(true) переопределяет настройку. Кроме того, сама уязвимость не ограничена MPTCP, поэтому это не полноценная замена исправлению ядра.
Патч уже внесён в поддерживаемые стабильные ветки Linux. Для дистрибутивов нужно проверить наличие исправленного пакета именно для своей ветки и загрузиться с обновлённым ядром. На момент публикации разбора для Ubuntu и RHEL обновления ещё ожидались.
https://thehackernews.com/2026/10/linux-kernel-tcp-flaw-with-98-cvss.html
//noalloc:root
func Process(buf []byte) {
// ...
}
Затем запустить проверку:
go install github.com/theconsensuslabs/noalloc/cmd/noalloc@latest
noalloc
Проверяется всё дерево вызовов, а не только тело функции. Инструмент указывает строки с потенциальными аллокациями: конкатенацией строк, записью в map, вызовами других функций и уходом данных в кучу.
Если найдена проблема, CLI завершается с ненулевым кодом - проверку можно поставить в CI, чтобы ловить регрессии.
В комплекте есть контейнеры с ограниченной ёмкостью, переиспользуемые буферы и JSON-кодировщик и декодировщик, рассчитанные на работу без новых аллокаций.
Проверка допускает некоторые исключения, включая первоначальную инициализацию и завершающие вызов пути ошибок. Поэтому это контроль заданных правил, а не безусловная гарантия отсутствия любых выделений памяти.
Нужен Go 1.27+.
https://github.com/theconsensuslabs/noalloc
go version -m ./app
Проверить бинарник на известные уязвимости:
govulncheck -mode=binary ./app
https://go.dev/blog/emudhra-incident crypto/x509, связанная с проверкой цифровых сертификатов.
Что изменилось:
- Ограничено доверие к небезопасным промежуточным сертификатам.
- Verify больше не возвращает цепочки с такими сертификатами.
- Повышена безопасность проверки TLS-сертификатов.
Анонс: https://groups.google.com/g/golang-announce/c/66pojueaQek/m/tmWX2Pq9AgAJ
Скачать: https://go.dev/dl/
@Golang_google