Nebula并发度限制为多少

-请问并发度限制为多少?包括默认值&推荐值&最大值

  • 单个线程最大EventBase实例个数
  • graph/storage线程数
  • graph-storage的连接池个数

你的问题和自定义变量无关,标签我编辑掉了哈,:thinking: 然后这个问题稍等我找个实施同学回复下哈。

Nebula作为一个优秀的分布式系统,graph和storage都可以独立水平扩容,所以理论上没有啥并发限制,看集群的配置。

  • EventBase这个我还要看看有没有这个设置;
  • graph/storage线程数这个没有限制的,看机器资源;
  • 连接池这个是客户端的概念,比如java-client中默认的最大连接数是10,这个根据业务需要来设置啊。
    你可以参考官方的性能报告来看推算你需要的并发能力和相应的配置:
    Nebula Graph v3.0.0 性能报告
1 个赞

graph的线程数,和cpu核数线性相关?

storage client的连接池限制是多少?EventBase数量过大会使得连接池爆炸吗?
class GeneralStorageClient
: public StorageClientBase<
cpp2::GeneralStorageServiceAsyncClient,
thrift::ThriftClientManagercpp2::GeneralStorageServiceAsyncClient>

graph里有个参数num_worker_threads,是用于执行query的线程数,默认值为0,就是用cpu核数。

storage client的线程池和我前面说的不一样,等相关的开发同学来回答你。

graph相关
num_netio_threads 网络IO线程
num_worker_threads 工作线程 处理RPC用的

storage相关
num_worker_threads 工作线程 处理RPC用的
num_io_threads 网络IO线程
reader_handlers 读请求线程池

这些参数默认的基本都够用,最大一般不要超过核数两倍

EventBase跟这些都没关系 用户不感知 也没有参数控制

2 个赞

此话题已在最后回复的 30 天后被自动关闭。不再允许新回复。