janusgraph提供广泛的选择关于存储和索引后端。所以部署非常灵活。这章节介绍几个架构。
讨论不同部署架构之前,理解janusgraph和后端的关系很重要。首先,应用直接与janusgraph通信,大多是发送gremlin遍历来执行,janusgraph负责和后端通信来执行收到的遍历命令。当使用server时,不会有master的概念,应用程序可以连接任何一个server实例,也可以RR负载均衡到不同的实例上,server之间自己不直接通信,所以当需要处理更多遍历时很容易扩展。
8.1 开始使用架构
当开始时,大多数用户选用这个架构,它通过最小化部署提供了扩展能力和容错能力,janusgraph server和存储后端及可选的索引服务部署在相同的机器上。
8.2 高级架构
高级架构是一个升级方案。server与存储后端、索引服务部署在不同的服务器上。优势是各个组件可以独立扩容和管理,在维护更多服务器时提供了更高的灵活性。
8.3 最小化架构
也可以都只有一台共用机器,适用于测试。
8.4 内嵌的janusgraph
也可以内嵌到JVM的应用程序里。janusgraph作为lib库内嵌,而不是独立的server部署。