На самом деле, не существует чётко определённого ограничения на количество запускаемых контейнеров на Docker. Тем менее, ограничение накладывает само оборудование.
Всего существует два основных фактора, которые могут ограничить число запускаемых контейнеров – размер вашего приложения и мощность вашего CPU. Если ваше приложение не изобилует функциями, и у вас есть большой запас мощности CPU, то вы можете запустить огромное количество контейнеров Docker одновременно.
✔️ Чем Docker Отличается От Hypervisor?
Опять же, ещё один вопрос собеседования по Docker для новичков, который потребует от вас знаний других инструментов для контейнеризации. Ответив на данный вопрос, вы покажете свою компетентность в сфере разработки в целом, а не только расскажете про использование Docker (что очень хорошо!).
По сути, здесь всё сводится к одной простой вещи – Hypervisor для стабильного функционирования потребует от вас обширного оборудования, тогда как Docker запускается лишь на операционной системе. Это позволяет Docker быть невероятно быстрым и выполнять задачи более плавно – в этом Hypervisor ему явно уступает.
#docker #junior #Go
@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
Пет-проекты — это именно то, что помогает глубоко разобраться в Go
Так что держите подборку туториалов по реализации разных интересных проектов на Go, вот некоторые из них:
— построение блокчейна на Go
— создание приложения с чатом, используя ReactJS
— сокращатель ссылок
— создание BitTorrent-клиента
@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉 Вышли версии Go 1.23.5 и 1.22.11!
🔒 Безопасность: включены исправления безопасности для CVE-2024-45336 и CVE-2024-45341 в файлах crypto/x509 и net/http.
📡 Анонс: https://groups.google.com/g/golang-announce/c/sSaUhLA-2SI.
📦 Скачать: https://go.dev/dl/#go1.23.5
@golang_interview
#golang #release #Go
🔒 Безопасность: включены исправления безопасности для CVE-2024-45336 и CVE-2024-45341 в файлах crypto/x509 и net/http.
📡 Анонс: https://groups.google.com/g/golang-announce/c/sSaUhLA-2SI.
📦 Скачать: https://go.dev/dl/#go1.23.5
@golang_interview
#golang #release #Go
Forwarded from Golang
🌀 Go 1.25 приносит мощный апгрейд JSON-библиотеки:
Что изменилось:
● Прямая работа с
Новые функции
● Потоковая обработка JSON
Появился модуль
● Гибкая настройка
Теперь функции
-
-
-
-
-
Пример:
● Новое поведение по умолчанию
Теперь:
JSON-парсинг чувствителен к регистру
Дублирующиеся ключи запрещены
Неизвестные поля игнорируются, если не указано иное
Можно включить прежнее поведение опциями (например, MatchCaseInsensitiveNames)
● Ускорение десериализации
Внутренний движок полностью переписан — ускорение десериализации в 2.7–10.2 раз. При использовании потоковых API (UnmarshalJSONFrom) — прирост до 40×.
● Экспериментальный статус
API ещё может меняться. По умолчанию encoding/json использует новый движок, но json/v2 доступен отдельно и требует флага:
Это — один из самых масштабных апдейтов стандартной библиотеки Go за последние годы. Подходит для тех, кто работает с тяжёлыми JSON-структурами, большими потоками или требует строгого контроля сериализации.
📌 Полный разбор и примеры
@golang_google
#golang #go #JSON
encoding/json/v2
— переработанная с нуля система сериализации с гибкой настройкой, высокой скоростью и новым APIЧто изменилось:
● Прямая работа с
io.Writer
и io.Reader
Новые функции
MarshalWrite
и UnmarshalRead
позволяют писать и читать JSON напрямую, без создания Encoder/Decoder. Это упрощает потоковую работу и уменьшает аллокации.● Потоковая обработка JSON
Появился модуль
jsontext
с функциями MarshalEncode
и UnmarshalDecode
, которые читают и пишут JSON по одному объекту за раз. Это критично для систем, обрабатывающих большие JSON-потоки, например, в Kubernetes.● Гибкая настройка
Теперь функции
Marshal
и Unmarshal
принимают опции, напрямую влияющие на формат вывода и поведение парсера:-
OmitZeroStructFields(true)
— пропускать нулевые поля -
StringifyNumbers(true)
— числа как строки -
MatchCaseInsensitiveNames(true)
— имена полей без учёта регистра -
FormatNilMapAsNull(true)
— nil`-карты как `null
-
WithIndent(" ")
— отступы в JSONПример:
json.Marshal(
user,
json.OmitZeroStructFields(true),
json.StringifyNumbers(true),
jsontext.WithIndent(" "),
)
● Новое поведение по умолчанию
Теперь:
JSON-парсинг чувствителен к регистру
Дублирующиеся ключи запрещены
Неизвестные поля игнорируются, если не указано иное
Можно включить прежнее поведение опциями (например, MatchCaseInsensitiveNames)
● Ускорение десериализации
Внутренний движок полностью переписан — ускорение десериализации в 2.7–10.2 раз. При использовании потоковых API (UnmarshalJSONFrom) — прирост до 40×.
● Экспериментальный статус
API ещё может меняться. По умолчанию encoding/json использует новый движок, но json/v2 доступен отдельно и требует флага:
GOEXPERIMENT=jsonv2
Это — один из самых масштабных апдейтов стандартной библиотеки Go за последние годы. Подходит для тех, кто работает с тяжёлыми JSON-структурами, большими потоками или требует строгого контроля сериализации.
📌 Полный разбор и примеры
@golang_google
#golang #go #JSON