Configuring Synchrony

Synchrony is the engine that powers collaborative editing in Confluence.

There's no UI for configuring Synchrony. Configuration changes, such as changing the Synchrony port or memory settings, are made via system properties. How you pass these properties depends on whether Synchrony is managed by Confluence, or deployed as a seperate cluster. 

In most cases, Synchrony is managed by Confluence

If you have a Data Center license, you may choose to deploy and manage Synchrony standalone in a cluster, instead of allowing Confluence to manage Synchrony for you.  See Possible Confluence and Synchrony Configurations for more information. 

On this page:

Passing recognized system properties to Synchrony

If Synchrony is managed by Confluence (the most common setup), you make changes to Synchrony by passing system properties to Confluence. See Configuring System Properties to find out the best way to do this for your operating system. 

You can find a full list of system properties at Recognized System Properties

If you're running Synchrony standalone in a cluster, you pass properties directly to Synchrony via the start-synchrony scripts.

Note that the properties are not always the same as those used when Synchrony is managed by Confluence.  A full list of required and optional properties can be found at Set up a Synchrony cluster for Confluence Data Center

Passing JVM arguments to Synchrony

Sometimes you may want to pass additional arguments, that are not already provided by a system property, directly to Synchrony's JVM.  

If Synchrony is managed by Confluence, you will need to create a file called synchrony-args.properties in your home directory (or shared home if you have a Data Center license) and include the arguments you want to pass to Synchrony, one per line, as follows:

property1=value1
property2=value2

Remember, you can't use this method for passing any value that is already handled by a system property, such port, Xmx or Xss etc.

If you're running Synchrony standalone in a cluster, you pass arguments to Synchrony's JVM directly, by adding them to your start-synchrony script, in the Optional Overrides section. 

Common configuration changes

The two most common changes people make to Synchrony is to change the port that Synchrony runs on, if port 8091 is already in use, and to change the maximum heap memory allocated to Synchrony. 

Change the port Synchrony runs on

Synchrony runs on port 8091 by default. If this port is already in use by another application on your server you can use the the synchrony.port system property to change it to an available port.  

If you're Confluence 6.0.3 or earlier you'll need to use reza.port instead of synchrony.port.

To change the maximum heap for Synchrony

Synchrony has a maximum heap size of 1 GB by default.

If you experience out of memory errors related to Synchrony, you can change the heap size allocated to Synchrony using the synchrony.memory.max system property.

If you're Confluence 6.0.3 or earlier you'll need to use reza.memory.max instead of synchrony.memory.max.

Troubleshooting

  • If you have a Data Center license, and Synchrony is managed by Confluence, we recommend storing the synchorny-args.properties file in the shared home directory, so that all Synchrony processes are started with the same JVM arguments. If you do locate the synchrony-args.properties file in the local home, the arguments will only be passed to the Synchrony process on that node.  
Last modified on Jun 14, 2019

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.