我们在Windows服务中托管了大约15个wcf服务.其中一些在.NET 4.0中,一些在.NET 3.5中.
我想知道如何对Windows服务中托管的wcf服务执行加载/压力/性能测试.客户端使用.net tcp绑定与服务进行通信.此外,大多数API都会为了性能而返回一个流.
我能够找到一些用于在IIS中托管的wcf服务测试的工具,但是不知道对窗口服务中托管的服务进行加载/压力/性能测试的方法.
任何帮助表示赞赏.谢谢.
performance wcf windows-services stress-testing load-testing
我想知道如果你需要在一台机器上的jvm中尽可能快地安排大量(非阻塞)任务,那么使用什么定时器实现.
我已经研究ScheduledThreadPoolExecutor和HashedWheelTimer来源(+轮定时器通用文档),这里是基本的差异(N -的所有悬而未决的计划任务数到目前为止,C -车轮大小):
的ScheduledThreadPoolExecutor
HashedWheelTimer
因此,我倾向于将硬件计时器用于这种用例,因为您必须以最小的开销快速安排任务,即O(1)用于新任务.此外,您将最大限度地减少簿记活动,因为您将获得更少的刻度(N <C)和更少的锁争用.在这种情况下,取消不是非常重要的特征
是否有人尝试过这些计时器进行类似的活动以及实际看到的结果?谢谢!
我正在尝试实现一个跨平台(桌面浏览器、iOS 和 Android)排版系统,允许用户输入任何 Unicode 字符串。
我应该使用哪些字符串来对我的系统进行压力测试并确保最多9位用户拥有良好的体验?是否有我也可以使用的标准或事实上的标准列表?
我是为我们公司开发基于网络的新产品的团队的一员.虽然我们非常积极,该应用程序将完美地与我们预期的平均10-50个并发用户一起工作,我们要求确保它将继续为1000个并发用户正常工作.
我们主要关注的是从文件系统加载和显示各种文档.要获取文件,用户需要登录,导航到搜索页面,等待搜索完成,然后单击链接并等待文档加载.
我们有SilkTest/TestPartner,它可以配置为完成上述步骤,但我不相信这些工具可以实际用于模拟我们需要的负载.
你能推荐一些(最好的免费/开源)程序吗?商业产品不是禁止的,但价格不能太大:)
提前致谢!
我刚刚开始使用Siege在新的Web服务器上进行加载/压力测试.我正在尝试测试我最资源/性能最重的脚本,但脚本需要cookie.在围攻中使用--header选项的正确格式是什么?
我试过这个没有运气:
siege --header ="Set-Cookie:PHPSESSID = - COOKIE--; iptoken = - COOKIE--" http://www.myurl.com/script.php ,
我没有找到关于此的文档,因此任何想法/建议都将不胜感激.
我正在使用SolrMeter来测试Apache Solr搜索引擎.Facet字段和Filter查询之间的区别对我来说并不清楚.SolrMeter教程将此列为Facet字段的一个例子:
content
category
fileExtension
Run Code Online (Sandbox Code Playgroud)
这是过滤查询的一个例子:
category:animal
category:vegetable
categoty:vegetable price:[0 TO 10]
categoty:vegetable price:[10 TO *]
Run Code Online (Sandbox Code Playgroud)
我很难缠绕它.有人可以通过例子解释一下吗?我可以在不指定构面或滤镜的情况下使用SolrMeter吗?
所以我把我的手机超频到了1.664ghz,我知道有些应用可以测试你的手机的CPU性能和修饰器,但我想自己做一些.真正让CPU工作的最佳方法是什么?我只是想做一个for循环做一百万次迭代做一些耗时的数学......但这不起作用,因为我的手机在几毫秒内做到了我认为......我尝试了数万亿次迭代......应用程序冻结,但我的任务管理器甚至没有显示应用程序使用的CPU.通常压力测试应用程序显示为红色并说cpu:85%ram:10mb ...那么我怎样才能真正让我的处理器认真思考?
我找不到除了4个long之外的任何文档,它们是关于Gatling输出中的simulation.log文件的开始和结束时收到的字节.以下是日志中的示例行:
My scenario - Sync 7526052819726874465-2088 REQUEST My Page 1404439715068 1404439715068 1404439716103 1404439716103 OK
Run Code Online (Sandbox Code Playgroud)
所有这一切代表什么?我们是否应该在Gatling文档中的某处提供此信息?
谢谢
编辑 - - - - - - - - - - - - - - - - - - - - - - - - - ---------------------
我浏览了Gatling源代码,发现FileDataWriterSpec 输出到simulation.log进行了测试.根据此规范,我们有一个RequestMessage对象 ,它用作携带记录数据的对象.根据这个类:
case class RequestMessage(
scenario: String,
userId: String,
groupHierarchy: List[String],
name: String,
requestStartDate: Long,
requestEndDate: Long,
responseStartDate: Long,
responseEndDate: Long,
status: Status,
message: Option[String],
extraInfo: List[Any]) extends DataWriterMessage {
def responseTime = …Run Code Online (Sandbox Code Playgroud) 我目前正在开发类似聊天的应用程序.有用户,聊天室,消息 - 所有这些东西.该应用程序由Node.js和Socket.IO提供支持.
不过,我有兴趣做的一件事是对应用程序进行压力测试.目前存在的测试只是一些使用1个客户端的功能测试.但是,我想做的事情就是测试1000个人同时登录应用程序,很多人进入聊天室,每个人都在那个房间里发送消息等等......
我该怎么做呢?Google搜索似乎会带来无关的结果.
我注意到有些人认为这是重复的.但是,这个问题涉及ASP.NET,并且使用Selenium是不可能的.另外,我原本打算获得涉及在node.js框架内执行特殊操作的答案.另一个开发人员(不再是团队的一员)写了一些压力测试,涉及定义一个自定义用户对象并迭代注册这些用户,加入一个房间等.这些测试是不完整的,不再可用,因为代码库中的很多内容已经改变因为他们写的.无论如何,某种方式允许以另一种方式对应用程序进行压力测试的答案是可以接受
编辑:这是我与许多用户进行压力测试的尝试.
function client() {
// Define a testing client that responds to socket io events and the like
}
...
testers = [];
for (int i = 0; i <= 1000; i++) testers.push(new client());
// Each client connects to server with option 'force new connection: true'
it('Should login many users simultaneously') {
// Use async.each on testers
// Use client.login() on each client.
}
Run Code Online (Sandbox Code Playgroud)
我发现事实证明这是有问题的.登录约250个用户后,测试不会提前.这是什么问题?它可能与node.js和socket.io的限制有关吗?
在这里我想问你,用python运行gunicorn uvicorn和从tiangolo默认运行有什么区别?
我尝试使用JMeter线程属性对这些进行压力测试:

从这些,我得到了结果::

从上面我尝试过:
这是我的案例 1(Tiangolo 基础)的 Dockerfile:
FROM tiangolo/uvicorn-gunicorn-fastapi:python3.8-slim
RUN apt-get update && apt-get install wget gcc -y
RUN mkdir -p /app
WORKDIR /app
COPY ./requirements.txt /app/requirements.txt
RUN python -m pip install --upgrade pip
RUN pip install --no-cache-dir -r /app/requirements.txt
COPY . /app
Run Code Online (Sandbox Code Playgroud)
这是我的 Dockerfile 案例 2(带有 gunicorn 命令的 Python 基础):
FROM python:3.8-slim-buster as builder
RUN apt-get update …Run Code Online (Sandbox Code Playgroud)