# VirtualHosts

A virtualhost is a independent namespace in which messaging is performed. Virtualhosts are responsible for the storage of message data.

Virtualhosts can only be managed by the HTTP management channel.

## Types

The following virtualhost types are supported.

- BDB - Virtualhost backed with Oracle BDB

  Oracle BDB JE is optional. See .

- BDB HA - Virtualhost backed with Oracle BDB utilising High Availability

- DERBY - Virtualhost backed with Apache Derby

- JDBC - Virtualhost backed with an external database

  JDBC 4.0 compatible drivers must be available. See

- Memory - In-memory node (changes lost on Broker restart)

- Provided - Virtualhost that co-locates message data within the parent virtualhost node

  Not available if Virtualhost Node type is JSON.

  .

## Context

- use_async_message_store_recovery Controls the background recovery feature.

## Attributes

- Name the virtualhost. This is the name the messaging clients refer to when forming a connection to the Broker.

- Store Path/JDBC URL. Refers the file system location or database URL used to store the message data.

- Store overflow/underflow. Some virtualhosts have the ability to limit the of the cumulative size of all the messages contained within the store. This feature is described in detail .

- Store transaction timeouts. Warns of long running producer transactions. See

- Synchronization policy. HA only. See

## Children

- Exchange

- Queue

- Connection

## Lifecycle

- Stop. Stops the virtualhost. This closes any existing messaging connections to the virtualhost and prevents new ones. Any inflight transactions are rolled back. Non durable queues and non durable exchanges are lost. Transient messages or persistent messages on non-durable queues are lost.

- Start. Activates the virtualhost.