Document mongodb's driver deployments
This patch adds a base documentation for mongodb's driver. This documentation is useful for both users, developers and operators, and it should be probably moved to the users-guide. Lets work and brainstorm on it as a developers doc first and then move it. Change-Id: I532c3d5edf20497eb9eae1f691dd706c5fe10b2a
This commit is contained in:
parent
38a4cbab00
commit
0097597f6c
@ -89,7 +89,7 @@ Zaqar is composed of two layers:
|
|||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
|
|
||||||
transport
|
transport
|
||||||
storage
|
storage/autoindex
|
||||||
|
|
||||||
The **transport drivers** are responsible for interacting with Zaqar clients.
|
The **transport drivers** are responsible for interacting with Zaqar clients.
|
||||||
Every query made by clients is processed by the transport layer,
|
Every query made by clients is processed by the transport layer,
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
-------
|
---------------------------------
|
||||||
Storage
|
API reference for storage drivers
|
||||||
-------
|
---------------------------------
|
||||||
|
|
||||||
.. currentmodule:: zaqar.queues.storage.base
|
.. currentmodule:: zaqar.queues.storage.base
|
||||||
|
|
12
doc/source/storage/autoindex.rst
Normal file
12
doc/source/storage/autoindex.rst
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
-------------
|
||||||
|
Storage Layer
|
||||||
|
-------------
|
||||||
|
|
||||||
|
The **storage drivers** are responsible for interacting with the storage backends
|
||||||
|
and, that way, store or retrieve the data coming from the transport layer.
|
||||||
|
|
||||||
|
.. toctree::
|
||||||
|
:maxdepth: 1
|
||||||
|
|
||||||
|
api
|
||||||
|
mongodb
|
5
doc/source/storage/mongodb.rst
Normal file
5
doc/source/storage/mongodb.rst
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
--------------
|
||||||
|
MongoDB Driver
|
||||||
|
--------------
|
||||||
|
|
||||||
|
.. automodule:: zaqar.queues.storage.mongodb
|
@ -11,7 +11,50 @@
|
|||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
"""MongoDB Storage Driver for Zaqar"""
|
r"""
|
||||||
|
MongoDB Storage Driver for Zaqar.
|
||||||
|
|
||||||
|
About the store
|
||||||
|
---------------
|
||||||
|
|
||||||
|
MongoDB is a nosql, eventually consistent, reliable database with support for
|
||||||
|
horizontal-scaling and capable of handling different levels of throughputs.
|
||||||
|
|
||||||
|
Supported Features
|
||||||
|
------------------
|
||||||
|
|
||||||
|
- FIFO
|
||||||
|
- Unlimited horizontal-scaling [1]_
|
||||||
|
- Reliability [2]_
|
||||||
|
|
||||||
|
.. [1] This is only possible with a sharding environment
|
||||||
|
.. [2] Write concern must be equal or higher than 2
|
||||||
|
|
||||||
|
Supported Deployments
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
MongoDB can be deployed in 3 different ways. The first and most simple one is
|
||||||
|
to deploy a standalone `mongod` node. The second one is to use a Replica Sets
|
||||||
|
which gives a master-slave deployment but cannot be scaled unlimitedly. The
|
||||||
|
third and last one is a sharded cluster.
|
||||||
|
|
||||||
|
The second and third methods are the ones recommended for production
|
||||||
|
environments where durability and scalability are a must-have. The driver
|
||||||
|
itself forces operators to use such environments by checking whether it is
|
||||||
|
talking to a replica-set or sharded cluster. Such enforcement can be disabled
|
||||||
|
by running Zaqar in an unreliable mode.
|
||||||
|
|
||||||
|
Replica Sets
|
||||||
|
------------
|
||||||
|
|
||||||
|
When running on a replica-set, Zaqar won't try to be smart and it'll rely as
|
||||||
|
much as possible on the database and pymongo.
|
||||||
|
|
||||||
|
Sharded Cluster
|
||||||
|
---------------
|
||||||
|
|
||||||
|
TBD
|
||||||
|
"""
|
||||||
|
|
||||||
from zaqar.queues.storage.mongodb import driver
|
from zaqar.queues.storage.mongodb import driver
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user