20.1. Deployment Scenarios

20.1.1. Server
20.1.2. Embedded

Neo4j can be embedded into your application, run as a standalone server or deployed on several machines to provide high availability.

Neo4j deployment options

Single Instance Multiple Instances

Embedded

EmbeddedGraphDatabase

HighlyAvailableGraphDatabase

Standalone

Neo4j Server

Neo4j Server high availability mode


20.1.1. Server

Neo4j is normally accessed as a standalone server, either directly through a REST interface or through a language-specific driver. More information about Neo4j server is found in Chapter 17, Neo4j Server. For running the server and embedded installations in high availability mode, see Chapter 22, High Availability.

20.1.2. Embedded

Neo4j can be embedded directly in a server application by including the appropriate Java libraries. When programming, you can refer to the GraphDatabaseService API. To switch from a single instance to multiple highly available instances, simply switch from the concrete EmbeddedGraphDatabase to the HighlyAvailableGraphDatabase.