Forwarded from Библиотека собеса по DevOps | вопросы с собеседований
Перечислите некоторые исходные пространства имен, из которых запускается Kubernetes.
Вот некоторые начальные пространства имен:
Default: это пространство имен включено Kubernetes, чтобы пользователи могли начать использовать новый кластер без необходимости предварительного создания пространства имен.
Kube-system: это пространство имен для объектов, созданное системой Kubernetes.
Kube-public: это пространство имен доступно для чтения как аутентифицированным, так и неаутентифицированным клиентам. Оно зарезервировано в основном для использования в кластере.
Вот некоторые начальные пространства имен:
Default: это пространство имен включено Kubernetes, чтобы пользователи могли начать использовать новый кластер без необходимости предварительного создания пространства имен.
Kube-system: это пространство имен для объектов, созданное системой Kubernetes.
Kube-public: это пространство имен доступно для чтения как аутентифицированным, так и неаутентифицированным клиентам. Оно зарезервировано в основном для использования в кластере.
👍2❤1🌚1
Kamal
Open Source-инструмент для развёртывания веб-приложений с помощью Docker. В нем всё одинаково просто работает и при деплое на 50 серверов, и при деплое 5 приложений на одном сервере.
Особенности:
👉 переход с использования прокси Traefik на собственный kamal-proxy;
👉 Kamal 2.0 будет запускать все контейнеры в кастомной сети Docker;
👉 новый способ передачи секретов в контейнеры.
#софт
Open Source-инструмент для развёртывания веб-приложений с помощью Docker. В нем всё одинаково просто работает и при деплое на 50 серверов, и при деплое 5 приложений на одном сервере.
Особенности:
👉 переход с использования прокси Traefik на собственный kamal-proxy;
👉 Kamal 2.0 будет запускать все контейнеры в кастомной сети Docker;
👉 новый способ передачи секретов в контейнеры.
#софт
👍3❤1
⚙️ Подпишись на нашу еженедельную email-рассылку, чтобы быть в курсе последних открытий и тенденций в мире бэкенда.
В еженедельных письмах ты найдешь:
● Языки программирования и фреймворки для бэкенда
● Архитектура и проектирование серверных приложений
● Базы данных и управление данными
● Безопасность и защита данных
● Облачные технологии и DevOps
● API и интеграции
● Тестирование и отладка
● Инструменты и утилиты для бэкенд-разработчиков
● Лучшие практики и паттерны проектирования
👉Подписаться👈
В еженедельных письмах ты найдешь:
● Языки программирования и фреймворки для бэкенда
● Архитектура и проектирование серверных приложений
● Базы данных и управление данными
● Безопасность и защита данных
● Облачные технологии и DevOps
● API и интеграции
● Тестирование и отладка
● Инструменты и утилиты для бэкенд-разработчиков
● Лучшие практики и паттерны проектирования
👉Подписаться👈
❤3❤🔥2🔥2
🐞🔍 Инструменты отладки JavaScript: 7 незаменимых помощников разработчика
Обзор семи ключевых инструментов отладки JavaScript, которые помогают разработчикам эффективно выявлять и исправлять ошибки в коде. Каждый из них имеет уникальные функции и преимущества, такие как интеграция с популярными платформами, возможность мониторинга в реальном времени, поддержка различных языков и фреймворков.
🔗 Читать статью
🔗 Зеркало
Обзор семи ключевых инструментов отладки JavaScript, которые помогают разработчикам эффективно выявлять и исправлять ошибки в коде. Каждый из них имеет уникальные функции и преимущества, такие как интеграция с популярными платформами, возможность мониторинга в реальном времени, поддержка различных языков и фреймворков.
🔗 Читать статью
🔗 Зеркало
😁3❤2🔥1
Очередной #дайджест для DevOps-ов
🛟 Armada — используя Armada, Kubernetes может стать основой для пакетной обработки и обслуживания рабочих нагрузок и выполнения миллионов заданий на нодах в день
🛟 Kubernetes на Proxmox — в статье автор создает кластер и две ноды: управление и рабочая. В качестве дополнительной задачи — сквозной доступ к PCIe для рабочей ноды
🛟 Рассказ о переводе Kubernetes на новую платформу— связка website-metadata-scraper, KDP, ArgoCD и CloudFlare с шифрованием origin
🛟 Практический пентест Kubernetes — правильная настройка среды оркестрации влияет на работу всей инфраструктуры
🛟 Введение в Istio для Kubernetes: основы и начальная настройка — мощная платформа, обеспечивающая сетевое взаимодействие, безопасность и наблюдаемость в кластере Kubernetes
🛟 Armada — используя Armada, Kubernetes может стать основой для пакетной обработки и обслуживания рабочих нагрузок и выполнения миллионов заданий на нодах в день
🛟 Kubernetes на Proxmox — в статье автор создает кластер и две ноды: управление и рабочая. В качестве дополнительной задачи — сквозной доступ к PCIe для рабочей ноды
🛟 Рассказ о переводе Kubernetes на новую платформу— связка website-metadata-scraper, KDP, ArgoCD и CloudFlare с шифрованием origin
🛟 Практический пентест Kubernetes — правильная настройка среды оркестрации влияет на работу всей инфраструктуры
🛟 Введение в Istio для Kubernetes: основы и начальная настройка — мощная платформа, обеспечивающая сетевое взаимодействие, безопасность и наблюдаемость в кластере Kubernetes
1👍3❤1🎉1
#вопросы_с_собеседования
Объясните концепцию Ingress в Kubernetes
Ingress — это объект API Kubernetes, который используется для предоставления маршрутов HTTP и HTTPS извне кластера к сервисам внутри кластера. Это обеспечивает единую точку входа в кластер, позволяет более просто управлять приложениями и устранять проблемы с маршрутизацией.
Объясните концепцию Ingress в Kubernetes
❤3🔥2
Forwarded from Библиотека программиста | программирование, кодинг, разработка
⚛️🔄 Улучшенная обработка асинхронных операций в React 19
Новая функциональность в React 19 направлена, прежде всего, на улучшение:
☑️ Управления состоянием.
☑️ Обработки ошибок.
☑️ Работы с асинхронными операциями.
👉 Рассмотрим ключевые улучшения подробнее:
▪️ Actions предназначены для обработки асинхронных запросов и автоматизации управления отложенными состояниями, ошибками и оптимистичными обновлениями. Фронтендеры теперь могут работать с асинхронными операциями более интуитивно, сохраняя пользовательский интерфейс отзывчивым в любое время — даже когда запросы выполняются в реальном времени.
▪️ Улучшенная работа с формами: в React 19 появился новый хук
▪️ Оптимистические обновления — способ мгновенно показать пользователю предполагаемый финальный результат в интерфейсе, даже если в фоновом режиме продолжается обработка данных. Это делает приложение более отзывчивым, особенно в случаях плохого соединения или долгих запросов. Если при выполнении возникает ошибка, интерфейс возвращается к исходному состоянию.
▪️ В React 19 появилась новая возможность — использовать
▪️ Server Components в React 19 — новый способ рендеринга компонентов: рендеринг происходит заранее, либо один раз во время сборки, либо при каждом запросе на сервере, который отделен от клиентской части приложения. Похожим образом реализован серверный рендеринг в Next.js.
▪️ Server Actions — новая функция в React, позволяющая компонентам на клиенте вызывать асинхронные функции, выполняемые на сервере.
🔗 Читать статью полностью
🔗 Зеркало
Новая функциональность в React 19 направлена, прежде всего, на улучшение:
☑️ Управления состоянием.
☑️ Обработки ошибок.
☑️ Работы с асинхронными операциями.
▪️ Actions предназначены для обработки асинхронных запросов и автоматизации управления отложенными состояниями, ошибками и оптимистичными обновлениями. Фронтендеры теперь могут работать с асинхронными операциями более интуитивно, сохраняя пользовательский интерфейс отзывчивым в любое время — даже когда запросы выполняются в реальном времени.
▪️ Улучшенная работа с формами: в React 19 появился новый хук
useActionState
, который предоставляет разработчикам встроенную поддержку для обработки состояний и отправки формы.▪️ Оптимистические обновления — способ мгновенно показать пользователю предполагаемый финальный результат в интерфейсе, даже если в фоновом режиме продолжается обработка данных. Это делает приложение более отзывчивым, особенно в случаях плохого соединения или долгих запросов. Если при выполнении возникает ошибка, интерфейс возвращается к исходному состоянию.
▪️ В React 19 появилась новая возможность — использовать
API use
для работы с ресурсами, такими как промисы и контексты, прямо внутри функции рендеринга. Это позволяет использовать use
даже в условных конструкциях, что ранее было невозможно с хуками.▪️ Server Components в React 19 — новый способ рендеринга компонентов: рендеринг происходит заранее, либо один раз во время сборки, либо при каждом запросе на сервере, который отделен от клиентской части приложения. Похожим образом реализован серверный рендеринг в Next.js.
▪️ Server Actions — новая функция в React, позволяющая компонентам на клиенте вызывать асинхронные функции, выполняемые на сервере.
🔗 Читать статью полностью
🔗 Зеркало
Please open Telegram to view this post
VIEW IN TELEGRAM
3❤3
Forwarded from Библиотека собеса по DevOps | вопросы с собеседований
Объясните, что такое диспетчер облачного контроллера.
Cloud Controller Manager позволяет связать кластер с API облачного провайдера. Cloud-controller manager позволяет поставщикам облачных услуг развиваться независимо от основного кода Kubernetes, абстрагируя специфичный код. Это позволяет поставщикам облачных услуг разрабатывать и поддерживать свой код независимо от основного кода Kubernetes.
Используя CCM, облачные операции, такие как создание и управление балансировщиками нагрузки, томами блочного хранения и облачными сетевыми ресурсами, могут выполняться бесперебойно в кластере Kubernetes. Это позволяет пользователям использовать преимущества как Kubernetes, так и облачного провайдера, сводя к минимуму потенциальные проблемы совместимости.
Cloud Controller Manager позволяет связать кластер с API облачного провайдера. Cloud-controller manager позволяет поставщикам облачных услуг развиваться независимо от основного кода Kubernetes, абстрагируя специфичный код. Это позволяет поставщикам облачных услуг разрабатывать и поддерживать свой код независимо от основного кода Kubernetes.
Используя CCM, облачные операции, такие как создание и управление балансировщиками нагрузки, томами блочного хранения и облачными сетевыми ресурсами, могут выполняться бесперебойно в кластере Kubernetes. Это позволяет пользователям использовать преимущества как Kubernetes, так и облачного провайдера, сводя к минимуму потенциальные проблемы совместимости.
👍3❤1
Forwarded from Библиотека программиста | программирование, кодинг, разработка
😮 SQL: от Тетриса до ИИ — неожиданные возможности языка баз данных
Долгое время SQL использовали лишь для запросов и изменения записей в базах данных — для полноценного программирования в привычном смысле слова он не подходил. Однако добавление рекурсивных общих табличных выражений (CTE) сделало SQL полным по Тьюрингу. Рекурсивные CTE состоят из двух частей:
• Нерекурсивная часть (базовый случай) — создает начальные данные.
• Рекурсивная часть — может выполняться много раз, каждый раз используя результат предыдущего шага.
Благодаря CTE на SQL можно при желании реализовать любой алгоритм. Энтузиасты уже сделали:
• Визуализацию множества Мандельброта с помощью ASCII-графики.
• 3D-движок для рисования объемных фигур.
• GPT на 500 строках SQL-кода. Подробная статья о реализации этого проекта опубликована здесь.
• Трассировку лучей (это метод создания реалистичных изображений).
На прошлой неделе коллекция крутых SQL-проектов пополнилась еще одной интересной разработкой — версией «Тетриса».
Эта реализация демонстрирует несколько нестандартных SQL-техник, о которых стоит знать, даже если вы используете SQL только по прямому назначению:
• Игровой цикл. В основе игры – рекурсивное общее табличное выражение (CTE). Оно создает бесконечный цикл, который инициализирует состояние игры, обновляет его на основе ввода пользователя и отрисовывает игру. Цикл продолжается, пока игра не закончится.
• Вывод игры. Поскольку SQL-запрос обычно возвращает результат только после завершения, для отображения игры в реальном времени используется команда RAISE NOTICE. Эта команда выводит информацию в стандартный вывод, позволяя отображать игровое поле и другую информацию в процессе игры.
• Пользовательский ввод. Обработка пользовательского ввода реализована через отдельную таблицу в базе данных. Эта таблица служит коммуникационной шиной между игрой и пользователем. Пользователь добавляет команды в эту таблицу, а игра их считывает.
• Решение проблемы изоляции данных. Чтобы игра могла видеть новые команды, добавленные в таблицу ввода во время выполнения запроса, используется расширение dblink. Оно позволяет создавать новое подключение к базе данных с новым снимком данных, что дает возможность считывать самые последние команды пользователя.
• Предотвращение кэширования. Чтобы PostgreSQL не кэшировал результаты запроса к таблице ввода, к запросу добавляется уникальный идентификатор итерации. Это заставляет базу данных выполнять запрос заново на каждой итерации игрового цикла.
Для управления состоянием игры и обработки игровых событий используются подзапросы и агрегатные функции.
• Подзапросы позволяют вычислить новое состояние игры после каждого хода, включая позицию фигуры, состояние поля, счет и т. д. К примеру, рекурсивный подзапрос используется для вычисления максимального количества линий, на которые может упасть текущая фигура.
• Агрегации применяются для подсчета очищенных линий, выбора фигуры с наименьшим рангом, обновления счета и уровня игры. Например,
🔗 Подробнее читайте в статье
🔗 Зеркало
Долгое время SQL использовали лишь для запросов и изменения записей в базах данных — для полноценного программирования в привычном смысле слова он не подходил. Однако добавление рекурсивных общих табличных выражений (CTE) сделало SQL полным по Тьюрингу. Рекурсивные CTE состоят из двух частей:
• Нерекурсивная часть (базовый случай) — создает начальные данные.
• Рекурсивная часть — может выполняться много раз, каждый раз используя результат предыдущего шага.
Благодаря CTE на SQL можно при желании реализовать любой алгоритм. Энтузиасты уже сделали:
• Визуализацию множества Мандельброта с помощью ASCII-графики.
• 3D-движок для рисования объемных фигур.
• GPT на 500 строках SQL-кода. Подробная статья о реализации этого проекта опубликована здесь.
• Трассировку лучей (это метод создания реалистичных изображений).
На прошлой неделе коллекция крутых SQL-проектов пополнилась еще одной интересной разработкой — версией «Тетриса».
Эта реализация демонстрирует несколько нестандартных SQL-техник, о которых стоит знать, даже если вы используете SQL только по прямому назначению:
• Игровой цикл. В основе игры – рекурсивное общее табличное выражение (CTE). Оно создает бесконечный цикл, который инициализирует состояние игры, обновляет его на основе ввода пользователя и отрисовывает игру. Цикл продолжается, пока игра не закончится.
• Вывод игры. Поскольку SQL-запрос обычно возвращает результат только после завершения, для отображения игры в реальном времени используется команда RAISE NOTICE. Эта команда выводит информацию в стандартный вывод, позволяя отображать игровое поле и другую информацию в процессе игры.
• Пользовательский ввод. Обработка пользовательского ввода реализована через отдельную таблицу в базе данных. Эта таблица служит коммуникационной шиной между игрой и пользователем. Пользователь добавляет команды в эту таблицу, а игра их считывает.
• Решение проблемы изоляции данных. Чтобы игра могла видеть новые команды, добавленные в таблицу ввода во время выполнения запроса, используется расширение dblink. Оно позволяет создавать новое подключение к базе данных с новым снимком данных, что дает возможность считывать самые последние команды пользователя.
• Предотвращение кэширования. Чтобы PostgreSQL не кэшировал результаты запроса к таблице ввода, к запросу добавляется уникальный идентификатор итерации. Это заставляет базу данных выполнять запрос заново на каждой итерации игрового цикла.
Для управления состоянием игры и обработки игровых событий используются подзапросы и агрегатные функции.
• Подзапросы позволяют вычислить новое состояние игры после каждого хода, включая позицию фигуры, состояние поля, счет и т. д. К примеру, рекурсивный подзапрос используется для вычисления максимального количества линий, на которые может упасть текущая фигура.
• Агрегации применяются для подсчета очищенных линий, выбора фигуры с наименьшим рангом, обновления счета и уровня игры. Например,
BOOL_OR()
применяется для определения, есть ли хотя бы одно столкновение между фигурой и занятыми клетками на поле.🔗 Подробнее читайте в статье
🔗 Зеркало
😁3❤2👍1
Привет, друзья! 👋
Мы готовим статью о распространенных ошибках в карьере программиста и хотели бы услышать ваше мнение! Поделитесь своими мыслями и опытом, и самые полезные советы мы включим в нашу статью. Вот несколько вопросов для вас:
🤔 С какими ошибками в своей карьере программиста вы сталкивались? Как вы их преодолели?
📚 Какие советы вы бы дали начинающим разработчикам, чтобы избежать распространенных ловушек в программировании?
🖥️ Что, по вашему мнению, важно учитывать при планировании своей карьеры в IT, чтобы минимизировать сожаления в будущем?
Спасибо за ваше участие! 🚀
Мы готовим статью о распространенных ошибках в карьере программиста и хотели бы услышать ваше мнение! Поделитесь своими мыслями и опытом, и самые полезные советы мы включим в нашу статью. Вот несколько вопросов для вас:
🤔 С какими ошибками в своей карьере программиста вы сталкивались? Как вы их преодолели?
📚 Какие советы вы бы дали начинающим разработчикам, чтобы избежать распространенных ловушек в программировании?
🖥️ Что, по вашему мнению, важно учитывать при планировании своей карьеры в IT, чтобы минимизировать сожаления в будущем?
Спасибо за ваше участие! 🚀
👍2❤1
Forwarded from Азбука айтишника
💻 15 лучших ноутбуков для программиста в 2024 году
Вот тебе путеводитель по лучшим машинам для разработки в 2024 году. От доступных моделей до настоящих монстров производительности. В конце статьи рекомендации наших читателей.
🔗 Ссылка на статью
Хочешь заменить свой рабочий ноут?
Вот тебе путеводитель по лучшим машинам для разработки в 2024 году. От доступных моделей до настоящих монстров производительности. В конце статьи рекомендации наших читателей.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2❤1
#дайджест перед выходными
↕️ Наглядное руководство по туннелированию SSH и переадресации портов — сценарии использования, конфигурация, SSH jumphosts, локальная/удаленная/динамическая переадресация портов и ограничения
↕️ Неинтерактивная SSH-аутентификация — аутентификация по паролю по-прежнему остаётся самой популярной, особенно в сетевом оборудовании
↕️ tmux — это консольная утилита-мультиплексор, которая представляет собой современную копию GNU Screen под лицензией BSD
↕️ OpenTelemetry from 0 to 100 — путь от первых коммитов до реальных этапов на проде
↕️ Реагирование на инциденты ИБ в Linux-системах — статья будет полезна в первую очередь начинающим администраторам Linux-систем и отделам ИБ для составления планов по реагированию
↕️ Наглядное руководство по туннелированию SSH и переадресации портов — сценарии использования, конфигурация, SSH jumphosts, локальная/удаленная/динамическая переадресация портов и ограничения
↕️ Неинтерактивная SSH-аутентификация — аутентификация по паролю по-прежнему остаётся самой популярной, особенно в сетевом оборудовании
↕️ tmux — это консольная утилита-мультиплексор, которая представляет собой современную копию GNU Screen под лицензией BSD
↕️ OpenTelemetry from 0 to 100 — путь от первых коммитов до реальных этапов на проде
↕️ Реагирование на инциденты ИБ в Linux-системах — статья будет полезна в первую очередь начинающим администраторам Linux-систем и отделам ИБ для составления планов по реагированию
❤4
Forwarded from Азбука айтишника
📊 Data Science и Big Data: сходства и различия
В нашей статье разложим по полочкам сходства и различия между специализациями Data Science и Big Data.
🌻 Что внутри?
▪️ Термины
▪️ Применение
▪️ Навыки
▪️ Карьерные перспективы
👉 Ссылка на Статью
В нашей статье разложим по полочкам сходства и различия между специализациями Data Science и Big Data.
▪️ Термины
▪️ Применение
▪️ Навыки
▪️ Карьерные перспективы
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Forwarded from Proglib.academy | IT-курсы
🏢 Как компании превращают данные в деньги: обзор российских практик Data Science
Обсуждаем, куда податься с полученными навыками — как наука о данных используется в российских компаниях. Кейсы коммерческого использования Data Science на территории России в нашей статье: финансы и ритейл, наука и производство, информационные системы и индустрия развлечений.
Хотите приобрести навыки для выполнения этих кейсов, тогда забирайте курсы:
🔵 Математика для Data Science
🔵 Основы программирования на Python
👉Ссылка на статью
Обсуждаем, куда податься с полученными навыками — как наука о данных используется в российских компаниях. Кейсы коммерческого использования Data Science на территории России в нашей статье: финансы и ритейл, наука и производство, информационные системы и индустрия развлечений.
Хотите приобрести навыки для выполнения этих кейсов, тогда забирайте курсы:
👉Ссылка на статью
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2❤1
🥇 Лучший способ создания паттерна проектирования Singleton в JavaScript и TypeScript
Делимся эффективными методами реализации паттерна Singleton в JavaScript и TypeScript. Кроме того рассмотрим преимущества паттерна и потенциальные риски его использования.
🔗 Читать статью
🔗 Зеркало
Делимся эффективными методами реализации паттерна Singleton в JavaScript и TypeScript. Кроме того рассмотрим преимущества паттерна и потенциальные риски его использования.
🔗 Читать статью
🔗 Зеркало
👏1