【JanusGraph】第八章:系统部署方案

第八章:系统部署型态

Chapter 8. Deployment Scenarios

JanusGraph提供多种后端存储和后端索引,使其能够更灵活的部署。本章介绍了几种可能的部署场景,以帮助解决这种灵活性带来的复杂性。

在讨论部署场景之前,理解JanusGraph本身的角色定位和后端存储的角色定位是非常重要的。首先,应用程序与JanusGraph进行交互大多数情况下都是进行Gremlin遍历,然后,JanusGraph把遍历请求发给配置好的后端(存储后端、索引后端)执行遍历处理。当JanusGraph以服务的形式被使用的时候,将不会有主服务(master JanusGraph Server)。应用程序可以连接任何一个JanusGraph服务实例。这样就可以使用负载均衡把请求分配到不同的实例上。JanusGraph服务实例之间本身是没有之间联系的,当遍历处理增大的时候这更容易扩容。

注意

本章提出的场景仅仅是JanusGraph部署的一个示例。实际部署的时候需要考虑具体用例和生产需要。

8.1 快速上手方案

8.1. Getting Started Scenario

这种场景是大多数用户在刚开始使用JanusGraph时可能要选择的场景。它提供了可伸缩性和容错性所需要的最少服务数量。每个JanusGraph服务运行在单独的存储后端和可选的索引后端。

image

8.2 建议部署方案

8.2. Advanced Scenario

建议部署方案也是由8.1节 快速上手部署方案进化来的。JanusGraph服务实例集群不和存储后端集群和索引后端集群部署在一起,他们被分配到不同的服务器上集群上。建议不同的组件集群(JanusGraph服务、索引后端、存储后端)部署到不同的服务器集群上,这样能够方便扩容和管理,相互之间也互不依赖。这为维护更多的服务器提供了更高的灵活性。

image

该方案提供了不同组件的独立可伸缩性,当然,使用可伸缩的后端也是非常有意义的。

8.3 极简方案

8.3. Minimalist Scenario

JanusGraph服务也可以和后端存储/索引部署在一台机器上。这对于测试或者单应用来说,部署在一台服务器上是非常具有吸引力的。

image

与上面方案相反,这种部署方案不可伸缩。内存后端可用于测试,Berkeley DB用于生产,Lucene作为可选索引后端。

8.4嵌入式JanusGraph

8.4. Embedded JanusGraph

基于JVM的应用程序可以直接嵌入一个JanusGraph包,而不用连接到JanusGraph服务。虽然这样可以减少管理开销,这导致不能对JanusGraph进行单独扩容。JanusGraph嵌入式部署方案是其他部署方案的变种,JanusGraph只是从服务器直接移动到应用程序中,因为它现在只是用作库,而不是独立的服务。


原文:https://docs.janusgraph.org/latest/deployment-scenarios.html

猜你喜欢

转载自blog.csdn.net/clj198606061111/article/details/81990338