Как использовать кеширование в Ingress Kubernetes

Зачем использовать кеширование в Ingress Кеширование — важный инструмент для уменьшения нагрузки на бэкенд и ускорения отдачи контента пользователям. Почему стоит использовать кеш Снижение нагрузки на сервисы Быстрая отдача при повторных запросах Снижение затрат и трафика Более стабильная работа при всплесках трафика Кеширование с NGINX Ingress Controller Наиболее распространённый способ — через NGINX Ingress с аннотациями. Шаг 1: Аннотации в объекте Ingress apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: my-app-ingress annotations: nginx.ingress.kubernetes.io/proxy-cache: "my-cache-zone" nginx.ingress.kubernetes.io/proxy-cache-key: "$scheme$request_method$host$request_uri" nginx.ingress.kubernetes.io/proxy-cache-use-stale: "error timeout updating http_500 http_502 http_503 http_504" spec: rules: - host: myapp.example.com http: paths: - path: / pathType: Prefix backend: service: name: my-app port: number: 80 Шаг 2: Добавляем зону кеша в ConfigMap apiVersion: v1 kind: ConfigMap metadata: name: nginx-configuration namespace: ingress-nginx data: proxy-cache-paths: | my-cache-zone keys_zone=my-cache-zone:10m max_size=100m inactive=60m use_temp_path=off; ⚠️ После этого может понадобиться перезапуск контроллера. ...

июня 16, 2025 · 1 минута · 194 слова · John Cena

Лучшие практики написания Dockerfile

Зачем нужны лучшие практики Dockerfile Плохо написанные Dockerfile создают большие, небезопасные и трудноподдерживаемые образы. Соблюдение лучших практик помогает делать образы быстрее, меньше и безопаснее. 1. Используйте официальные или минимальные образы Лучше выбирать минимальные или проверенные образы: FROM alpine:3.19 # или FROM python:3.11-slim 2. Фиксируйте версии Избегайте неожиданных обновлений: RUN apt-get install -y curl=7.68.0-1ubuntu2.6 3. Объединяйте RUN-команды Меньше слоёв — меньше размер: RUN apt-get update && apt-get install -y curl unzip && rm -rf /var/lib/apt/lists/* 4. Используйте .dockerignore Исключите ненужные файлы из контекста сборки: ...

июня 16, 2025 · 1 минута · 190 слов · John Cena

Обзор фреймворков Ruby: Rails, Sinatra, Hanami и другие

Обзор Ruby — выразительный язык, получивший широкое распространение в веб-разработке. На его основе были созданы различные фреймворки, каждый из которых подходит для определённых задач. В этой статье рассмотрим наиболее популярные Ruby-фреймворки и разберем, в каких случаях стоит выбрать каждый из них. 1. Ruby on Rails Самый популярный и функциональный фреймворк. Плюсы: Подход “соглашение вместо конфигурации” Встроенный ORM (ActiveRecord), миграции, почта и многое другое Большое сообщество и готовые библиотеки Минусы: Слишком тяжёл для небольших проектов Порог входа для новичков Пример: # config/routes.rb Rails.application.routes.draw do get '/hello', to: 'welcome#index' end # app/controllers/welcome_controller.rb class WelcomeController < ApplicationController def index render plain: "Hello from Rails!" end end 2. Sinatra Минималистичный DSL для быстрого создания веб-приложений. ...

июня 16, 2025 · 2 минуты · 250 слов · John Cena

Что нужно знать о CDN (Content Delivery Network)

Что такое CDN? CDN (Content Delivery Network) — это географически распределённая сеть серверов, предназначенная для быстрой доставки контента (изображений, скриптов, видео) пользователям из ближайших к ним точек. Зачем использовать CDN? 1. Ускорение загрузки Контент кэшируется на edge-серверах, снижая задержки. 2. Снижение нагрузки на сервер CDN разгружает основной сервер, улучшая масштабируемость. 3. Повышение доступности CDN помогает справляться с пиковыми нагрузками и DDoS-атаками. 4. Глобальный охват Быстрая доставка контента пользователям по всему миру. ...

июня 16, 2025 · 1 минута · 190 слов · John Cena

Что такое Helm в Kubernetes и как им пользоваться?

Введение: Что такое Helm? Представьте себе менеджер пакетов, как apt или yum, но для Kubernetes. Это и есть Helm. Он помогает управлять приложениями в кластере — вы просто используете готовый “чарт”, и Helm всё делает за вас. Зачем использовать Helm? 💡 Упрощает развёртывание сложных приложений ⚙️ Управляет версиями и даёт возможность откатов 🔁 Позволяет повторяемые и контролируемые релизы 📦 Избавляет от дублирования YAML-файлов Как работает Helm Helm использует: Charts — шаблоны для Kubernetes манифестов Releases — установленная версия чарта в кластере Установка Helm curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash Или через пакетный менеджер: ...

июня 16, 2025 · 2 минуты · 247 слов · John Cena