前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >8. 部署方案

8. 部署方案

作者头像
公号:咻咻ing
发布2019-08-07 11:21:55
7230
发布2019-08-07 11:21:55
举报
文章被收录于专栏:公众号:咻咻ing公众号:咻咻ing

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只是从服务器直接移植到了应用程序,因此它现在只用作库而不是独立服务。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-04-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 咻咻ing 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 基础部署
  • 2. 高级部署
  • 3. 简单部署
  • 4. 嵌入式JanusGraph
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档