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، تحافظ القناة على نشاط مستقر. خلال آخر 30 يوماً تغيّر عدد الأعضاء بمقدار 8، وفي آخر 24 ساعة بمقدار -22، مع بقاء الوصول العام مرتفعاً.
- حالة التحقق: غير موثّقة
- معدل التفاعل (ER): يبلغ متوسط تفاعل الجمهور 17.62%. وخلال أول 24 ساعة من النشر يحصد المحتوى عادةً 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