AsyncGraphClientImpl 实例在多线程场景下的情况

  • nebula 版本:1.2.0
  • 部署方式(分布式):
  • 硬件信息
    • 磁盘(SSD)
    • CPU、内存信息 40core 192GB
  • 问题的具体描述
  • AsyncGraphClientImpl java 客户端是否可以单例模式在多线程场景下使用,是线程安全的么?因为我这边注意到一步客户端的实现内部是提交给一个线程的线程池去执行。
1赞

是线程安全的

如何多线程使用可以看下这个issue

那这样的话是否就不需要实现一个AsyncGraphClientImpl 的连接池了呢?只需要保证该client在接受并发请求时不做space切换?

因为在多线程中同时使用同一个连接是不支持的,所以需要在子线程内进行连接,不同的连接独立执行后续的操作。

如此我想监控AsyncGraphClientImpl 内部的线程池及任务队列情况该如何扩展呢

继承AbstractClient 重新实现即可是么

AsyncGraphClientImpl 也不可以么?这似乎跟liuyu85cn
的说法不太一样呢

AsyncGraphClientImpl 使用时也需要每个线程中重复 connect ?

AsyncGraphClientImpl是不需要重复connect的, 上面需要在子线程内connect的是GraphClientImpl,也可以作为伪线程安全的客户端来使用 。 不冲突呀 :rofl:

AsyncGraphClientImpl 使用一段时间后提示 session xxx has expired,请问可以怎么解决呢

设一下 session 超时时间

可以设置会话不过期么,值为多少呢

浙ICP备20010487号