5134d3018b
This patch adds Zaqar-specific contents of the OpenStack Installation Guide in the Zaqar repository per [1]. It only covers installation on Red Hat-based systems. Also this patch adds tox.ini environment for install-guide and adds openstackdocs-theme to test-requirements.txt. The Zaqar Installation Guide structure is based on Install Guide Cookiecutter: https://review.openstack.org/#/c/314229/. [1] http://specs.openstack.org/openstack/docs-specs/specs/newton/project-specific-installguides.html Change-Id: I72300c146b22511da4432775fc84e8c821a3fd12 Implements: blueprint install-guide-in-tree Partially-Implements: blueprint projectspecificinstallguides
66 lines
2.6 KiB
ReStructuredText
66 lines
2.6 KiB
ReStructuredText
==========================
|
|
Messaging service overview
|
|
==========================
|
|
|
|
The Message service is multi-tenant, fast, reliable, and scalable. It allows
|
|
developers to share data between distributed application components performing
|
|
different tasks, without losing messages or requiring each component to be
|
|
always available.
|
|
|
|
The service features a RESTful API and a Websocket API, which developers can
|
|
use to send messages between various components of their SaaS and mobile
|
|
applications, by using a variety of communication patterns.
|
|
|
|
Key features
|
|
~~~~~~~~~~~~
|
|
|
|
The Messaging service provides the following key features:
|
|
|
|
* Choice between two communication transports. Both with Identity service
|
|
support:
|
|
|
|
* Firewall-friendly, **HTTP-based RESTful API**. Many of today's developers
|
|
prefer a more web-friendly HTTP API. They value the simplicity and
|
|
transparency of the protocol, its firewall-friendly nature, and its huge
|
|
ecosystem of tools, load balancers and proxies. In addition, cloud
|
|
operators appreciate the scalability aspects of the REST architectural
|
|
style.
|
|
* **Websocket-based API** for persistent connections. Websocket protocol
|
|
provides communication over persistent connections. Unlike HTTP, where
|
|
new connections are opened for each request/response pair, Websocket can
|
|
transfer multiple requests/responses over single TCP connection. It saves
|
|
much network traffic and minimizes delays.
|
|
|
|
* Multi-tenant queues based on Identity service IDs.
|
|
* Support for several common patterns including event broadcasting, task
|
|
distribution, and point-to-point messaging.
|
|
* Component-based architecture with support for custom back ends and message
|
|
filters.
|
|
* Efficient reference implementation with an eye toward low latency and high
|
|
throughput (dependent on back end).
|
|
* Highly-available and horizontally scalable.
|
|
* Support for subscriptions to queues. Several notification types are
|
|
available:
|
|
|
|
* Email notifications
|
|
* Webhook notifications
|
|
* Websocket notifications
|
|
|
|
Layers of the Messaging service
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
The Messaging service has following layers:
|
|
|
|
* The transport layer (Messaging application) which can provide these APIs:
|
|
|
|
* HTTP RESTful API (via ``wsgi`` driver).
|
|
* Websocket API (via ``websocket`` driver).
|
|
|
|
* The storage layer which keeps all the data and metadata about queues and
|
|
messages. It has two sub-layers:
|
|
|
|
* The management store database (Catalog). Can be ``MongoDB`` database (or
|
|
``MongoDB`` replica-set) or SQL database.
|
|
* The message store databases (Pools). Can be ``MongoDB`` database (or
|
|
``MongoDB`` replica-set) or ``Redis`` database.
|