JanusGraph Server配置


JanusGraph使用Gremlin Server engine作為服務器組件來處理和應答客戶端查詢,當Gremlin Server集成到JanusGraph,稱為JanusGraph Server。
JanusGraph Server必須被手工啟動,JanusGraph Server提供了遠程執行Gremlin腳本的途徑。該節描述了如何配置websocket連接以及如何配置JanusGraph Server接受REST 請求。

7.1 Getting Started

7.1.1 Using the Pre-Packaged Distribution

JanusGraph自帶了一個可以開箱使用的JanusServer,里面集成了簡化的cassandra和ES,不能作為生產環境,但可以用來學習使用JanusServer。該Janus Server是基於Websocket的,使用步驟如下:
  • 下載janusgraph-$version.zip文件
  • 解壓
  • 運行bin/janusserver.sh start,該步驟將會啟動Gremlin Server及Cassandra/ES到一個單獨的進程。
 
啟動之后即支持gremlin客戶端通過websocket連接server,最常用的即為gremlin.sh shell。
$ bin/janusgraph.sh start
ForkingCassandra...
Running`nodetool statusthrift`.. OK (returned exit status 0 and printed string "running").
ForkingElasticsearch...
Connecting to Elasticsearch(127.0.0.1:9300)... OK (connected to 127.0.0.1:9300).
ForkingGremlin-Server...
Connecting to Gremlin-Server(127.0.0.1:8182)... OK (connected to 127.0.0.1:8182).
Run gremlin.sh to connect.

7.1.1.1 Connecting to Gremlin Server

當運行了janusserver之后,Gremlin Server已經做好准備接受socket連接,最簡單的方式是使用gremlin console:、
 
使用bin/gremlin.sh 啟動Gremlin Console,使用 :remote命令連接遠程服務器;使用 :> 提交 gremlin語句。
$ bin/gremlin.sh
\,,,/
(o o)
-----oOOo-(3)-oOOo-----
plugin activated: tinkerpop.server
plugin activated: tinkerpop.hadoop
plugin activated: tinkerpop.utilities
plugin activated: janusgraph.imports
plugin activated: tinkerpop.tinkergraph
gremlin>:remote connect tinkerpop.server conf/remote.yaml
==>Connected- localhost/127.0.0.1:8182
gremlin>:> graph.addVertex("name","stephen")
==>v[256]
gremlin>:>g.V().values('name')
==>stephen
注意conf/remote.yaml是配置文件,指明了要連接的地址。

7.2 JanusGraph Server as WebSocket Endpoint

配置JanusGraph作為websocket服務器。
 
  • 首先測試本地配置是否真確,可以通過gremlin console測試或者通過程序測試。本地配置為./conf目錄下的配置,這里選取了janusgraph-cassandra-es.properties 這一配置文件,需要注意的是,該配置文件中需要包含有:gremlin.graph=org.janusgraph.core.JanusGraphFactory
  • 一旦測試成功,將文件拷貝到./conf/gremlin-server目錄下:cp conf/janusgraph-cassandra-es.properties conf/gremlin-server/socket-janusgraph-cassandra-es.properties
  • 將配置文件 ./conf/gremlin-server/gremlin-server.yaml 拷貝到新文件並命名為:socket-gremlin-server.yaml:cp conf/gremlin-server/gremlin-server.yaml conf/gremlin-server/socket-gremlin-server.yaml
  • 修改socket-gremlin-server.yaml文件
    • 如果不想通過localhost連接,則修改 host: 10.10.10.100
    • 將graph節指向最新的配置文件 
graphs:{
graph: conf/gremlin-server/socket-janusgraph-hbase-server.properties}
  •    啟動janusgraph server,指定配置文件
bin/gremlin-server.sh ./conf/gremlin-server/socket-gremlin-server.yaml
注意:不要使用bin/janusgraph.sh,該shell將會啟動一個預先配置好的GremlinServer。

7.3 JanusGraph Server as REST-style Endpoint

7.4 Advanced JanusGraph Server Configuration

7.4.1 WebSocket versus REST

JanusGraph server只能取REST或Websocket的一種,但可以配置兩個服務分別接收不同類型的請求。     

7.4.2 Using TinkerPop Germlin Server with JanusGraph

JanusGraph sever本身集成了TinkerPop server,因此可以單獨部署ThinkerPop Server並與JanusGraph集成。具體不表,詳見官方文檔。
 
 
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM