1.1. Deployment Scenarios

1.1.1. Server
1.1.2. Embedded

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

Table 1.1. Neo4j deployment options

Single Instance Multiple Instances

Embedded

EmbeddedGraphDatabase

HighlyAvailableGraphDatabase

Standalone

Neo4j Server

Neo4j Server high availability mode


1.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 4, Neo4j Server. For running the server in high availability mode, see Section 4.4, “Starting the Neo4j server in high availability mode”.

1.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.