JanusGraph提供了多种存储和索引后端选项,可以灵活地部署它们。本章介绍了一些可能的部署方案,以帮助解决这种灵活性带来的复杂性。

在讨论不同的部署方案之前,了解JanusGraph本身和后端存储所扮演的角色非常重要。首先,程序只与JanusGraph直接通信,主要是通过发送Gremlin遍历来交互。 然后JanusGraph与配置的后端进行通信以执行接收到的遍历。当JanusGraph以JanusGraph Server的形式使用时,就不区分master JanusGraph Serv程序可以连接到任何JanusGraph Server实例。他们还可以使用负载均衡策略把请求分发给不同的实例。 JanusGraph Server实例本身不直接相互通信,这使得在需要处理更多遍历时可以轻松扩展它们。

注意:本章中介绍的场景仅是JanusGraph如何部署的示例。 每个部署都需要考虑具体的用例和生产需求。

1. 基础部署

这种方案是大多数用户在刚开始使用JanusGraph时可能想要选择的方案。 它提供可扩展性和容错性,并且所需服务器数量最少。 JanusGraph Server与后端存储的实例一起运行,并且在每个server上选择是否运行索引实例。

通过简单地添加更多相同类型的服务器或将其中一个组件移动到专用服务器上来扩展。 后者描述了将部署向高级部署转换的方式。

任何可扩展存储后端都可以通过这种方案来使用。 但是,对于Scylla,当托管与此方案中的其他服务共存时,需要进行一些配置。 在这个方案中需要使用索引时,它也需要是可扩展的。

2. 高级部署

高级部署是在第8.1节“基础部署”上的演变。 它们不是将JanusGraph Server实例与存储后端以及可选的索引后端一起部署,而是在不同的服务器上部署。 在不同服务器上部署不同组件(JanusGraph服务,存储/索引后端)的优势在于它们可以相互独立地进行扩展和管理。 这提供了更高的灵活性,但代价是必须维护更多的服务器。

这种部署方案提供了不同组件的独立可伸缩性,因此使用可扩展的后端存储/索引当然也是最有意义的。

3. 简单部署

也可以在一台服务器上将JanusGraph Server与后端一起部署。 这对于前期测试调研尤其有吸引力,例如,当JanusGraph只支持单个应用,该应用也可以在同一服务器上运行。

与之前的部署方案相反,此方案对于使用不可扩展的后端是最有意义的。 内存存储可用于测试调研目的,或者Berkeley DB用于生产,Lucene作为可选的索引后端。

4. 嵌入式JanusGraph

除了从应用连接到JanusGraph服务器之外,还可以将JanusGraph作为库嵌入到基于JVM的应用程序中。 虽然这减少了管理开销,但却无法独立于此应用程序来扩展JanusGraph。 嵌入式JanusGraph可以作为任何方案的变体进行部署。 JanusGraph只是从服务器直接移植到了应用程序,因此它现在只用作库而不是独立服务。

欢迎扫码关注公众号,更好的交流

8. JanusGraph部署方案相关推荐

  1. 服务器虚拟化组网方案,服务器虚拟化部署方案计划.doc

    服务器虚拟化部署方案计划 服务器虚拟化部署方案 数据库服务器设计说明 在数据库服务器的配置中,对数据库服务器性能影响较大的有: CPU:数据库查询和修改操作都需要消耗大量的CPU资源,另外数据库都是多 ...

  2. AI 框架部署方案之模型部署概述

    0 概述 模型训练重点关注的是如何通过训练策略来得到一个性能更好的模型,其过程似乎包含着各种"玄学",被戏称为"炼丹".整个流程包含从训练样本的获取(包括数据采 ...

  3. Maven项目部署方案

    以xbank项目做为应用背景,简单说明一下Maven项目的部署方案: 1.项目说明 xbank基础服务端的11个子项目均采用Maven搭建: 其中各项目功能设计如下: froad-xbank-serv ...

  4. 5G NPN 行业专网 — 高可靠专网部署方案

    目录 文章目录 目录 需求概述 关键技术 业务保活 数据同步 应急接入 业务回迁 部署方案 方案 1:专网只部署 1 套 UPF 方案2 :专网部署双 UPF 容灾 方案 3:专网部署 1 套 UPF ...

  5. Neutron 物理部署方案 - 每天5分钟玩转 OpenStack(68)

    2019独角兽企业重金招聘Python工程师标准>>> 前面我们讨论了 Neutron 的架构,本节讨论 Neutron 的物理部署方案: 不同节点部署不同的 Neutron 服务组 ...

  6. 微服务部署:蓝绿部署、滚动部署、灰度发布等部署方案对比与总结

    在项目迭代的过程中,不可避免需要"上线".上线对应着部署,或者重新部署:部署对应着修改:修改则意味着风险. 目前有很多用于部署的技术,有的简单,有的复杂:有的得停机,有的不需要停机 ...

  7. ActiveMQ实现负载均衡+高可用部署方案

    2019独角兽企业重金招聘Python工程师标准>>> 一.架构和技术介绍 1.简介 ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线.完全支持JMS1.1和J ...

  8. Ruby on Rails 终极部署方案 nginx+mina+puma

    搭建工具介绍 Ruby on Rails作为一款十分优秀的web开发框架,在当前web领域中慢慢占据了越来越重要,秉承rails快速开发的特点,很多快速部署rails的方案也越来越多.这篇文章中所选的 ...

  9. 爱数应用容灾部署方案三

    级联复制的异地容灾方案部署 爱数应用容灾部署方案可在异地部署远程容灾站点实现远程应用容灾方案,采用级联复制模型,在本地和远程分别部署容灾站点,克服实时复制对带宽延迟较高的缺点,获得最佳的容灾效果.并且 ...

最新文章

  1. 更改管理GPO的域控制器
  2. c语言 8155 数码管,基于8155的8LED显示串口通信机设计 编程
  3. 实验mongodb使用gridfs存放一个大文件
  4. 整数数组的定义,然后输入一个整数X,假定X不在这个数组,返回小于X位置的最大数目i而超过X位置的最小数目j...
  5. oxford5k和paris6k数据集介绍_sklearn函数:KFold(分割训练集和测试集)
  6. 【MySQL】如何让数据库查询区分大小写
  7. Linux物理内存初始化
  8. redis 安装并设置为开机启动服务
  9. 计算机无法共享磁盘分区,win7系统下怎么创建虚拟磁盘分区以达到网络共享的目的...
  10. Redis集群Windows
  11. 中国公有云三巨头,同时支持Rancher Kubernetes平台 1
  12. java %2c_java2c工具(修复)
  13. Linux基本操作之重定向文件
  14. 青龙脚本合集(不定期更新版)
  15. C语言候老师,两本留言册背后的C语言老师
  16. 一阶线性微分方程计算公式推导
  17. Android 墨水屏黑白红色阶算法和抖动算法,拿过去直接用
  18. 2019中兴校招流程回顾总结
  19. 中长期定存利率下行 大额存单还“香”吗
  20. 强烈推荐这三款实用APP

热门文章

  1. web服务器启用了不安全的HTTP方法
  2. 手机上如何对图片格式进行转换?
  3. Query 操作手册 (新增逻辑数据库)
  4. 中山证券:从A股两次大牛市的特征 看当前股市走势
  5. CSDN设置头像不显示
  6. Python3网络爬虫:我要爬帅哥!!!(爬取帅哥图)
  7. 数字IC手撕代码-平头哥技术终面手撕真题
  8. 这届后浪程序员不太行?别闹!他们是下一代BAT的缔造者
  9. 快速判断时间复杂度和空间复杂度
  10. 云计算基本概念IaaS,PaaS,SaaS和Serverless