RabbitMQ Messaging & Async Systems · Урок

Виртуальные хосты для изоляции арендаторов

Используйте виртуальные хосты RabbitMQ, чтобы изолировать обмены, очереди и разрешения между командами или средами — основу безопасных многопользовательских развёртываний.

Урок 4 из 413 шагов

«Виртуальные хосты для изоляции арендаторов» — бесплатный урок RabbitMQ Messaging & Async Systems на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения RabbitMQ Messaging & Async Systems, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс RabbitMQ Messaging & Async Systems содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

Why Isolation Matters

Sharing one broker across teams or environments risks name clashes and accidental cross-access. Virtual hosts (vhosts) partition a broker into isolated namespaces.

What Is a Virtual Host?

A vhost is a logical grouping of exchanges, queues, bindings, and permissions. Resources in one vhost are invisible to another, even with identical names.

The Default Vhost

RabbitMQ ships with a default vhost named /. Production setups usually create dedicated vhosts instead of using the default for everything.

Creating a Vhost

Create vhosts via the CLI.

rabbitmqctl add_vhost team-payments

Granting Permissions per Vhost

Permissions are scoped to a vhost. Grant a user configure, write, and read access with regex patterns.

rabbitmqctl set_permissions -p team-payments alice '.*' '.*' '.*'

Connecting to a Vhost

Clients select a vhost in the connection parameters; the same credentials may have different rights in different vhosts.

params = pika.ConnectionParameters(host='localhost', virtual_host='team-payments')

Isolation in Practice

  • Queue orders in vhost A is separate from orders in vhost B
  • A user without permission on a vhost cannot even see it
  • Resource limits can be applied per vhost

Vhost vs Separate Brokers

Vhosts give logical isolation on shared infrastructure, cheaper than running many brokers, but they share the same node resources (CPU, memory, disk).

Per-Vhost Limits

You can cap the number of connections and queues per vhost to stop one tenant from starving others.

rabbitmqctl set_vhost_limits -p team-payments '{"max-connections": 100, "max-queues": 50}'

Monitoring per Vhost

The management plugin shows metrics broken down by vhost, so you can track each tenant's message rates, queue depths, and connection counts independently.

Security Best Practices

  • One vhost per team or environment
  • Least-privilege permission regexes
  • Avoid the default vhost for real workloads
  • Apply per-vhost limits

Quick Check

Test your vhost understanding.

Recap

Virtual hosts partition a single broker into isolated namespaces with their own resources, permissions, and limits.

Use one vhost per team or environment, apply least-privilege permissions and per-vhost limits, and avoid the default vhost for production traffic.

Можно начать бесплатно

Изучай RabbitMQ Messaging & Async Systems с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
11
Уроки
44

Часто задаваемые вопросы

Урок «Виртуальные хосты для изоляции арендаторов» бесплатный?

Да — полный текст урока «Виртуальные хосты для изоляции арендаторов» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс RabbitMQ Messaging & Async Systems, подпишись на CoddyKit PRO. Курс RabbitMQ Messaging & Async Systems содержит 4 уроков всего.

Чему я научусь в уроке «Виртуальные хосты для изоляции арендаторов»?

Используйте виртуальные хосты RabbitMQ, чтобы изолировать обмены, очереди и разрешения между командами или средами — основу безопасных многопользовательских развёртываний. Ты практикуешь RabbitMQ Messaging & Async Systems с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать RabbitMQ Messaging & Async Systems?

Предыдущий опыт не требуется. RabbitMQ Messaging & Async Systems на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «Виртуальные хосты для изоляции арендаторов»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке RabbitMQ Messaging & Async Systems?

Да. Каждый урок RabbitMQ Messaging & Async Systems включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Пользователи и разрешения RabbitMQ
  2. SSL/TLS для защищённых соединений
  3. Плагин управления RabbitMQ и метрики
  4. Виртуальные хосты для изоляции арендаторов
← Назад к RabbitMQ Messaging & Async Systems