如何使用javascript对google数据存储进行压力测试?

如何使用javascript对google数据存储进行压力测试?,javascript,node.js,google-cloud-platform,google-cloud-datastore,Javascript,Node.js,Google Cloud Platform,Google Cloud Datastore,我们需要测试我们的基础设施的弹性(每秒高达数十万个请求),架构中的一个元素是谷歌云数据存储。我需要执行的测试之一是一秒钟可以写入多少个实体 Google提供了一个插入和列出元素的代码示例,但我发现编写一个实体(每次插入一到两秒)很慢,即使在bash脚本中并行它们,也需要相当多的时间,无论是从基础架构外部还是内部 有没有办法直接测试每秒可以发送数千个请求的数据存储?最好是javascript 我自己不是javascript程序员,所以如果这个问题让人觉得有点明显,我表示歉意——我希望不是 你可以看

我们需要测试我们的基础设施的弹性(每秒高达数十万个请求),架构中的一个元素是谷歌云数据存储。我需要执行的测试之一是一秒钟可以写入多少个实体

Google提供了一个插入和列出元素的代码示例,但我发现编写一个实体(每次插入一到两秒)很慢,即使在bash脚本中并行它们,也需要相当多的时间,无论是从基础架构外部还是内部

有没有办法直接测试每秒可以发送数千个请求的数据存储?最好是javascript


我自己不是javascript程序员,所以如果这个问题让人觉得有点明显,我表示歉意——我希望不是

你可以看看这个:

您可以通过Nodejs安装它,并通过yml文件选择目标URL来运行请求,如下所示:

    config:   
    target: 'https://artillery.io'   
    phases:
        - duration: 60
          arrivalRate: 20   
    defaults:
        headers:
          x-my-service-auth: '987401838271002188298567' 
    scenarios:
      - flow:
        - get:
            url: "/docs"
artillery run hello.yml 
您可以通过以下方式运行上述代码:

    config:   
    target: 'https://artillery.io'   
    phases:
        - duration: 60
          arrivalRate: 20   
    defaults:
        headers:
          x-my-service-auth: '987401838271002188298567' 
    scenarios:
      - flow:
        - get:
            url: "/docs"
artillery run hello.yml 
您还可以通过以下链接获得有关此javascript库的更多详细信息:


很高兴您使用谷歌数据存储(GDS)

从后端测试的最佳方法是使用ApacheJMeter和手动模块(目前为服务)服务器实例


在不太了解数据存储模型的情况下,GDS可以在一个实体组中每秒保存一个实体。但是,您可以使用作业聚合队列技术提高GDS的吞吐量性能。目前,每保存一次,每秒最多可收到300个请求。

云数据存储旨在轻松地同时为所有GAE应用程序,甚至是GAE以外的应用程序,甚至是谷歌云以外的应用程序提供服务。因此,IMHO测试数据存储本身的性能是毫无意义的,只要你尊重发布的内容——很可能你在这个过程中只能测试你的口袋深度。只是想了解一下:

使用数据存储测试应用程序的性能是完全不同的事情。这取决于你的应用程序的实现、你的实体结构和关系等等。这就是你想要关注的。但这是在测试你的应用程序,而不是数据存储本身

您可能想看看:


这是一个很好的工具,谢谢,但我不认为我能用它来做我想做的事情,因为这是http请求,数据存储似乎不是这样工作的,如果你觉得我错了,想提供一个更具体的例子,那就太好了。@Ulukai我认为谷歌云数据存储支持http请求。看看这个: