mirror of
https://github.com/corda/corda.git
synced 2024-12-26 16:11:12 +00:00
30 lines
1.4 KiB
ReStructuredText
30 lines
1.4 KiB
ReStructuredText
Running a notary service
|
|
------------------------
|
|
|
|
At present we have several prototype notary implementations:
|
|
|
|
1. ``SimpleNotaryService`` (single node) -- commits the provided transaction input states without any validation.
|
|
2. ``ValidatingNotaryService`` (single node) -- retrieves and validates the whole transaction history
|
|
(including the given transaction) before committing.
|
|
3. ``RaftValidatingNotaryService`` (distributed) -- functionally equivalent to ``ValidatingNotaryService``, but stores
|
|
the committed states in a distributed collection replicated and persisted in a Raft cluster. For the consensus layer
|
|
we are using the `Copycat <http://atomix.io/copycat/>`_ framework.
|
|
|
|
To have a node run a notary service, you need to set appropriate configuration values before starting it
|
|
(see :doc:`corda-configuration-file` for reference).
|
|
|
|
For ``SimpleNotaryService``, simply add the following service id to the list of advertised services:
|
|
|
|
.. parsed-literal::
|
|
|
|
extraAdvertisedServiceIds : [ "net.corda.notary.simple" ]
|
|
|
|
For ``ValidatingNotaryService``, it is:
|
|
|
|
.. parsed-literal::
|
|
|
|
extraAdvertisedServiceIds : [ "net.corda.notary.validating" ]
|
|
|
|
Setting up a ``RaftValidatingNotaryService`` is currently slightly more involved and is not recommended for prototyping
|
|
purposes. There is work in progress to simplify it. To see it in action, however, you can try out the :ref:`notary-demo`.
|