问题标签 [throughput]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1065 浏览

tomcat - 少量用户的 Tomcat 吞吐量限制

我们有一个 webapp 服务于我们的一项服务的请求。我们让它在 Tomcat 7 服务器上运行。如下所述,不需要更多细节,因为我们可以创建的最基本的 Servlet 具有相似的结果。

我们使用 jmeter 运行负载测试,其中不同数量的并发线程向我们的服务发出请求一分钟。根据结果​​,我们生成了一些图表,其中包含平均响应时间与并发线程,以及每秒请求数与并发线程。

在我们的测试中大约有 10 个并发线程时,我们发现应用程序管理的吞吐量存在限制。从该线程数开始,平均响应时间会增加,并且每秒的请求数是稳定的。

我们已经测试了我们的应用程序的一些更改,甚至删除了所有应用程序逻辑并返回一个静态响应。并且还对一个什么都不做的基本 Servlet 运行相同的测试,我们得到了类似的结果:更好的平均响应时间和吞吐量值,但在测试中达到了大约 10 个并发线程的限制。

我们还使用 Apache Benchmark 运行了类似的测试,以消除测试工具的问题。

测试在 2 个服务器池中运行。在本地计算机上运行时,它们给出了类似的结果,但在大约 5 个并发线程时达到了吞吐量限制。

这是吞吐量图表。请注意,每一行的值并不重要(例如:一些删除了数据库访问,甚至大多数应用程序逻辑都需要更少的时间)。

吞吐量图表

我们想要了解的是吞吐量限制来自哪里以及我们可以做些什么来改进它。

谢谢,豪尔赫

PS:我会添加图片而不仅仅是一个链接,但看起来我没有足够的声誉:(

0 投票
1 回答
670 浏览

amazon-s3 - s3 的典型写入吞吐量是多少(使用水槽 0.9.4)

我在 BE 模式下运行我的水槽(水槽 0.9.4-cdh3u4)流,并且位于不同机器上的代理和收集器都是大型 EC2 实例

收集器写入本地文件系统以及同一区域中的 S3 存储桶。

代理在 E2E 模式下配置时已经过测试,可处理 4MB/s,代理 <-> 收集器速度也是如此。

使用“iftop”,我注意到收集器有两个传出连接到 S3,到 s3 的写入吞吐量徘徊在 40KB/s - 50KB/s 左右

  1. 您使用收集器看到的 s3 的典型写入吞吐量是多少?

  2. 我想知道是否可以生成更多这些线程(写入 S3)以最大化实例利用率?

我怎么做?

如果我能以另一种方式增加写入吞吐量,我宁愿不产生更多的收集器。

0 投票
1 回答
9620 浏览

networking - 使用 AWK 计算 NS2 中的吞吐量

在此处输入图像描述 我在 NS 2.29 中的 senario 有 5 个节点,每个节点有 2 个接口来期望节点 0 和节点 4,节点 0 想要将数据包发送到节点 4。我使用的协议是 AODV,节点类型是无线的

我要计算

接收数据包/发送数据包

以及不同模拟时间的吞吐量,我想用AWK语言做所有事情。

我不知道如何共享输出文件来理解我所说的。

输出文件 :

……

未完待续

谁能解释我该怎么做?任何答案都会非常有帮助。谢谢

0 投票
2 回答
2058 浏览

wcf - WCF 吞吐量低于预期

对于帖子的长度,我深表歉意,但是有很多事情会导致我的情况,我已经尝试包括我根据其他帖子所做的所有设置更改。简而言之,我的 WCF 服务似乎一次被限制为 3 或 4 个并发客户端请求。如果我将应用程序池 Maximum Worker Processes 设置得更高(大约 10 个)或将服务行为 ConcurrencyMode 设置为 Multiple,我会获得更好的吞吐量(快几倍)。然而,这些似乎是解决实际问题的方法,带来了他们自己的问题。我错了,还是 IIS 应该能够在一个工作进程中启动我的 WCF 服务的许多实例(数十个或更多)来处理负载?我只知道我在某处缺少一个设置,但我找不到它。

编辑:到目前为止,在尝试这些建议时,我意识到我的数学与吞吐量无关。使用 ForEach 循环,我可以在 20 秒的时间内在服务器上获得估计的并发处理(每个任务持续时间 * 任务数 / 总运行时间)。对于正在完成的实际工作(睡眠 10 秒),这似乎仍然很低,但不再低得离谱。

第二次编辑:我将@Pablo 的评论标记为答案,因为他的答案加上他的链接为我提供了显着提高性能的信息(我认为是 3 倍)。但是,我想提出后续问题-在 WCF / IIS 中处理并发请求的合理期望是什么?假设 CPU、内存和 IO 不是瓶颈,处理请求的实际限制/期望(每个 CPU)是多少?我正在寻找的是一个经验法则,它告诉我,如果不添加 CPU(或工作进程),我可能不会获得任何更大的提升。再次感谢。

(在 Windows 2008 Server 上,由 IIS 托管,1 个处理器)
WCF 服务配置(缩写):

客户端配置(缩写):

客户端方法调用:

WCF 服务代码:

感谢您的任何见解或建议!

0 投票
2 回答
556 浏览

cuda - CUDA 加法与移位指令性能

我正在尝试了解我正在研究的大型 CUDA 内核的指令吞吐量。我写了两个小程序来比较加法和移位指令的吞吐量。根据CUDA C Programming Guide,移位指令的吞吐量是加法指令的一半。但是,当我在 Tesla M2070 上测量跟随两个程序的时间时,时间是完全相同的。有人可以解释为什么会这样吗?

加法程序:

换班程序:

编辑:添加 ptx 代码添加和移位程序。如您所见,唯一的区别在于第 78 行,即添加指令与 shl 指令。

添加 PTX 代码:

换档 PTX 代码:

0 投票
1 回答
1243 浏览

performance - 在 .NET ActiveMQ 中异步发送

我希望提高针对 ActiveMQ 编写的高吞吐量生产者的性能,根据这个useAsyncSend 将:

强制使用异步发送,从而大幅提升性能;但意味着无论消息是否已发送,send() 方法都会立即返回,这可能导致消息丢失。

但是我看不出它对我的简单测试用例有什么影响。

使用这个非常基本的应用程序:

我得到以下输出:

这表明每条消息发送大约需要 800 毫秒,并且调用session.Send()阻塞大约需要两秒半。即使文档说

“send() 方法将立即返回”

AsyncSend = true如果我将并行 for 更改为正常的 for 循环或更改为,这些数字也基本相同,AlwaysSyncSend = true所以我不相信异步开关在所有工作......

谁能看到我在这里缺少什么来使发送异步?


进一步测试后:

根据 ANTS 性能分析器,绝大多数运行时间都花在等待同步上。看来问题在于各种传输类通过监视器在内部阻塞。特别是我似乎迷上了MutexTransport的 OneWay 方法,该方法一次只允许一个线程访问它。

看起来对 Send 的调用将阻塞,直到上一条消息完成,这解释了为什么我的输出显示第一条消息阻塞了 12 毫秒,而下一条消息阻塞了 1858 毫秒。我可以通过实现一个每消息连接模式来进行多种传输,这种模式可以改善问题并使消息发送并行工作,但大大增加了发送单个消息的时间,并且消耗了如此多的资源,看起来不像正确的解决方案。

我已经用 1.5.6 重新测试了所有这些,没有发现任何区别。

0 投票
1 回答
209 浏览

spring-integration - Spring Integration 的高吞吐量、事务性使用

我搜索了 Internet,发布到 Spring 论坛,并阅读了几乎所有的在线文档,但我无法弄清楚 Spring Integration 是否可以在单个多资源 (JTA) 事务中处理多个消息。这对我的目的至关重要,以便获得必要的吞吐量。有谁知道这是否可能?(以及如何使其工作的一些指导将不胜感激。)

0 投票
0 回答
249 浏览

mysql - MySQL Cluster 能否在大量写入和大量写入的情况下匹配 NoSQL 性能

我正在设计一款回合制策略游戏,允许玩家保存游戏状态,以便他们可以在闲暇时玩/恢复游戏。这会创建一个数据环境,其中可能会发生大量并发读/写。此外,在游戏的上下文中,玩家可以使用许多不同的变量来转换数据。

我们有意实施了基于回合的设计来帮助减少并发读/写的数量,但是它仍然会导致一个非常动态的游戏环境,其中数据会不断转换(显然,鉴于它是一个游戏,可能会有一个1:1 的读写比),并且考虑到它的动态性,可能更适合无​​模式设计。

我现在想知道的是,是否有人看到 MySQL 集群在这样的环境中表现如何?它的性能是否与 Couchbase 或 Riak 等 NoSQL 解决方案一样好?对于写入密集型环境,哪个(整体上)表现更好?在峰值吞吐量下,哪个数据的访问时间更一致?此外,这将与 ACID 合规性保持最接近(和最快)——数据版本控制非常重要,即使它是基于回合的游戏,玩家也应该能够立即看到他们的选择——而不会遇到麻烦的锁定等问题。

0 投票
1 回答
775 浏览

file - 下载文件时计算吞吐量?

通过下载和上传 5MB、10MB、20MB、50MB 和 100MB 文件。如何计算吞吐量?

谢谢,

0 投票
1 回答
317 浏览

database - 如何计算 AWS DynamoDB 表的临时吞吐量?

我的系统应该每天将大量数据写入 DynamoDB 表。这些写入是突发的,即在每天的特定时间,几个不同的进程必须将它们的输出数据转储到同一个表中。只要在下一次转储发生之前写入所有日常数据,写入速度并不重要。我需要找出计算我的桌子临时容量的正确方法。

因此,为简单起见,我们假设我只有一个进程每天写入一次数据,并且它必须将最多X项目写入表中(每个项目 < 1KB)。我必须指定的容量是否基本上等于X / 24 / 3600写入/秒?

谢谢