Cassandra Sync和Async,哪一个返回结果集更快?

wfveoks0  于 2023-01-25  发布在  Cassandra
关注(0)|答案(2)|浏览(132)

我正在对Datastax Cassandra进行一些测试,案例描述如下:

  • 先决条件:1 Cassandra服务器,一个具有复杂主键(用户名,id)的表,选择查询如下:"从表名称中选择 *,其中用户名='abc ';并且结果集是16行的集合。
  • 案例1:在DevCenter上执行查询,需要1676毫秒才能完成
  • 用例2:使用"session. execute(statement)"在Java驱动程序上同步执行查询,耗时441ms
  • 用例3:使用https://docs.datastax.com/en/developer/java-driver/3.3/manual/async/中介绍的异步解决方案在Java Driver上执行查询,需要1121毫秒才能完成

有人告诉我同步/异步速度更快的情况吗?

ax6ht2ek

ax6ht2ek1#

只对一个查询使用异步方法是不值得的,但是对于大量的查询,它会给你带来性能提升,因为你的代码不会等待前一个查询来执行下一个查询。

2hh7jdfx

2hh7jdfx2#

我认为同步/异步方法不是更快或更慢,而是更多地考虑客户端的资源利用率。异步-对于长时间运行的查询没有阻塞。同步-阻塞,但对于快速查询可能是好的。异步方法可能需要使用其他编程技术(未来,回调..),在一些编程语言中,它比其他语言更受支持。

相关问题