Changeset View
Changeset View
Standalone View
Standalone View
src/docs/user/cluster/cluster_notifications.diviner
@title Cluster: Notifications | @title Cluster: Notifications | ||||
@group cluster | @group cluster | ||||
Configuring Phabricator to use multiple notification servers. | Configuring Phorge to use multiple notification servers. | ||||
Overview | Overview | ||||
======== | ======== | ||||
You can run multiple notification servers. The advantages of doing this | You can run multiple notification servers. The advantages of doing this | ||||
are: | are: | ||||
- you can completely survive the loss of any subset so long as one | - you can completely survive the loss of any subset so long as one | ||||
Show All 11 Lines | |||||
of some nodes. It does **not** attempt to guarantee that every message is | of some nodes. It does **not** attempt to guarantee that every message is | ||||
delivered. | delivered. | ||||
Notification messages provide timely information about events, but they are | Notification messages provide timely information about events, but they are | ||||
never authoritative and never the only way for users to learn about events. | never authoritative and never the only way for users to learn about events. | ||||
For example, if a notification about a task update is not delivered, the next | For example, if a notification about a task update is not delivered, the next | ||||
page you load will still show the notification in your notification menu. | page you load will still show the notification in your notification menu. | ||||
Generally, Phabricator works fine without notifications configured at all, so | Generally, Phorge works fine without notifications configured at all, so | ||||
clustering assumes that losing some messages during a disruption is acceptable. | clustering assumes that losing some messages during a disruption is acceptable. | ||||
How Clustering Works | How Clustering Works | ||||
==================== | ==================== | ||||
Notification clustering is very simple: notification servers relay every | Notification clustering is very simple: notification servers relay every | ||||
message they receive to a list of peers. | message they receive to a list of peers. | ||||
▲ Show 20 Lines • Show All 42 Lines • ▼ Show 20 Lines | "cluster": [ | ||||
"protocol": "http" | "protocol": "http" | ||||
} | } | ||||
] | ] | ||||
... | ... | ||||
} | } | ||||
``` | ``` | ||||
Configuring Phabricator | Configuring Phorge | ||||
======================= | ======================= | ||||
To configure clustering on the client side, add every service you run to | To configure clustering on the client side, add every service you run to | ||||
`notification.servers`. Generally, this will be twice as many entries as | `notification.servers`. Generally, this will be twice as many entries as | ||||
you run actual servers, since each server runs a `"client"` service and an | you run actual servers, since each server runs a `"client"` service and an | ||||
`"admin"` service. | `"admin"` service. | ||||
A simple example with the two servers above (providing four total services) | A simple example with the two servers above (providing four total services) | ||||
▲ Show 20 Lines • Show All 72 Lines • Show Last 20 Lines |
Content licensed under Creative Commons Attribution-ShareAlike 4.0 (CC-BY-SA) unless otherwise noted; code licensed under Apache 2.0 or other open source licenses. · CC BY-SA 4.0 · Apache 2.0