标签: latency

超时在SQL Azure上过期; 无法在内部部署SQL Server

在我们的业务范围内,我们托管基于REST的API,由Windows Azure托管,SQL Azure作为数据库存储.

Web角色(Windows 2008R2,IIS 7.5,WCF,大型实例)和SQL Azure都托管在北欧地区.

问题是,当我们进行密集的SQL工作时,我们经常会遇到"Timeout expired.在操作完成之前超时时间已过,或者服务器没有响应." .

让我感到困扰的是,无论我们做什么,我们都无法在我们的内部部署SQL服务器(SQL Server 2008R2)上引发这种情况.

任何帮助澄清这个谜团的人都会受到赞赏,因为似乎Web角色实例并不是直接与SQL Azure实例交谈,尽管两者都位于北欧.

更详细的例外:

<SqlException>
    <Message>Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.</Message>
    <StackTrace>
        <Line>at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)</Line>
        <Line>at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()</Line>
        <Line>at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)</Line>
        <Line>at System.Data.SqlClient.SqlDataReader.ConsumeMetaData()</Line>
        <Line>at System.Data.SqlClient.SqlDataReader.get_MetaData()</Line>
        <Line>at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)</Line>
        <Line>at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)</Line>
        <Line>at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, …
Run Code Online (Sandbox Code Playgroud)

sql rest performance latency azure

10
推荐指数
1
解决办法
5003
查看次数

CentOS VirtualBox对http请求的延迟时间为5秒

我在我的OSX 10.8.2机器上运行VirtualBox 4.2.1中的centos 6.3,并遇到了一个我不理解的延迟问题.基本上,每个到任何地方的http请求都有额外的5000毫秒延迟.Ping没有额外的延迟.

延迟问题的屏幕截图

[vagrant@localhost ~]$ curl -o /dev/null https://google.com -w ""
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
110   220  110   220    0     0     42      0  0:00:05  0:00:05 --:--:--  7586
[vagrant@localhost ~]$ curl -o /dev/null https://google.com -w ""
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
110   220  110   220    0     0     42      0  0:00:05  0:00:05 --:--:--  7586 …
Run Code Online (Sandbox Code Playgroud)

virtualbox latency centos http vagrant

10
推荐指数
1
解决办法
2984
查看次数

Java垃圾收集,基于类的终身

我一直在玩Java垃圾收集器的参数,我看到昂贵和频繁的小垃圾收集,因为伊甸园/幸存者空间填满了.这是因为我分配了一个非常大的对象池.我知道的这些对象是"permament",因为它们被重用但永远不会被GCed.因此,我试图找到一种方法来"自动"将这些类型的对象放在旧代而不是新代中.

我目前正在通过分配一个非常大的新一代(以避免非常频繁的小型GC)来解决这个问题,不幸的是,这意味着每个单独的集合都更昂贵.

我希望能够为每个类指定一个使用率,并将其设置为特定类别的对象,我知道永远不会得到GCed(并且非常大)(在他的情况下,它是关于

我的应用程序对延迟很敏感.

我目前的设置是使用最小/最大堆大小为48的CMS.

这可能吗?我已经搜索了每个可能的JVM标志,但找不到任何相关的效果,并且看不到使用自定义类加载器的方法.

java garbage-collection latency

10
推荐指数
1
解决办法
128
查看次数

查找嵌入式Linux系统中的延迟问题(停顿)

我有一个在Atmel AT91SAM9260EK板上运行的嵌入式Linux系统,我有两个进程以实时优先级运行.管理器进程使用POSIX消息队列定期"ping"工作进程,以检查工作进程的运行状况.通常往返ping大约需要1ms,但偶尔需要更长时间 - 大约800ms.没有其他进程以更高的优先级运行.

看来停顿可能与日志记录(syslog)有关.如果我停止记录问题似乎消失了.但是,如果日志文件位于JFFS2或NFS上,则没有任何区别.没有其他进程写入"磁盘" - 只是syslog.

我有哪些工具可以帮助我找出这些摊位发生的原因?我知道等待时间并将使用它.还有其他一些可能更有用的工具吗?

一些细节:

  • 内核版本:2.6.32.8
  • libc(syslog函数):uClibc 0.9.30.1
  • syslog:busybox 1.15.2
  • 没有配置交换空间[在编辑中添加]
  • 根文件系统在tmpfs上(从initramfs加载)[在编辑中添加]

linux embedded latency

9
推荐指数
1
解决办法
1015
查看次数

如何使用JavaScript ping IP地址

我想运行一个JavaScript代码来ping 4个不同的IP地址,然后检索这些ping请求的丢包和延迟,并在页面上显示它们.

我该怎么做呢?

javascript latency ping

9
推荐指数
2
解决办法
6万
查看次数

Azure Web角色与SQL Azure和应用程序性能之间的延迟

Azure Web角色Sql Azure延迟

嗨,只是要知道Web辅助工具角色SQL Azure之间存在延迟和超时 ,有时会发生超时事件(这些不是经常随机发生的)100%ping中有40%没有0ms超时

如果Web工作者角色和SQL Azure位于同一数据中心中,为什么在使用内部网络进行通信时存在超时

请参阅附带的屏幕截图:

在此输入图像描述

运行在这个web worker角色的应用程序有一个神秘的性能起伏......如果可能是由于各种原因,但我需要知道的是,关于延迟和超时的这些统计数据是否会影响Web应用程序的性能?

谢谢,

performance latency azure azure-sql-database

9
推荐指数
2
解决办法
6214
查看次数

OpenGL实际更新屏幕需要多长时间?

我在C中有一个简单的OpenGL测试应用程序,它根据键输入绘制不同的东西.(Mesa 8.0.4,在带有NVIDIA GTX650的PC上试用了Mesa-EGL和GLFW,Ubuntu 12.04LTS).绘制非常简单/快速(旋转三角形类型的东西).我的测试代码不会故意以任何方式限制帧速率,它看起来像这样:

while (true)
{
    draw();
    swap_buffers();
}
Run Code Online (Sandbox Code Playgroud)

我非常小心地计时,我发现从一个eglSwapBuffers()(或glfwSwapBuffers)调用到下一个的时间是~16.6毫秒.从时间调用eglSwapBuffers()之前的下一次调用比只少一点点,即使什么画是很简单的.交换缓冲区调用的时间远低于1ms.

但是,从应用程序更改其响应按键的绘制时间到实际显示在屏幕上的更改的时间大于150毫秒(大约8-9帧).这是通过以60fps的屏幕和键盘的相机记录来测量的.(注意:确实,我没有办法测量从按键到应用程序获取它需要多长时间.我假设它是<< 150ms).

因此,问题:

  1. 在调用交换缓冲区和实际显示在屏幕之间的图形缓冲在哪里?为何延误?看起来应用程序看起来总是在屏幕前方绘制许多帧.

  2. OpenGL应用程序可以做什么来立即绘制屏幕?(即:没有缓冲,只是阻止直到绘制完成;我不需要高吞吐量,我确实需要低延迟)

  3. 应用程序可以做些什么来尽快实现上述即时抽奖?

  4. 应用程序如何才能知道屏幕上实际显示的内容?(或者,当前缓冲延迟的时间长度/帧数是多少?)

c opengl 3d latency opengl-es

9
推荐指数
1
解决办法
1540
查看次数

http请求的成本与文件大小,经验法则?

HTTP请求与文件大小之前已经问过这类问题,但我希望有更好的答案.在这个相关的问题中,回答者似乎很好地用延迟+传输时间的漂亮公式回答了这个问题,估计延迟为80毫秒,传输速度为5Mb/s.但至少在一个方面似乎存在缺陷.在正常的浏览体验中,多个请求和传输不会同时发生吗?当我检查Chrome中的"网络"标签时,这就是它的样子.这是不是意味着请求延迟不是那么可怕的事情?

还有其他事情需要考虑吗?显然延迟和带宽会有所不同,但是80毫秒和5Mb/sa是经验法则吗?我想到了一个类比,我想知道它是否正确.想象一下火车站只有一个轨道和一个轨道(或者可能是两个轨道).Http请求就像发送引擎以在另一个站点获得一堆汽车.他们返回拉长列铁路车辆,代表所下载的文件.所以你可以发送一个引擎并让它带来巨大的负载.或者你可以发送多个引擎,他们每个可以带回较小的负载,当然他们都必须等待轮到他们回到车站.并且有些引擎在其他引擎进入之前无法发送出去.这是一个有缺陷的类比吗?

我想最重要的问题是你如何预测http请求中会有多少重叠,以便你可以知道,例如,在你的页面上有两个大的PNG文件或者是否有一个webp图像通常是值得的,以及不兼容浏览器的Webpjs js和swf文件.这使请求数量增加了一倍,但总文件大小减少了一半(比如节省了200kB).

optimization latency httprequest web

9
推荐指数
2
解决办法
1231
查看次数

Docker 中的 Nginx 在 Docker Mac OS X m1 上每隔几个(~10)个请求就会挂起

编辑:我发现这是一个网络问题,但我还没有关于如何修复它的答案,所以希望其他人知道有关它的任何信息:

当我在 Nginx 容器内时,我可以像这样查询 node.js:

curl http://192.168.65.2:3001/api/getTest
Run Code Online (Sandbox Code Playgroud)

这确实有效,但与下面的 Nginx 具有相同的不稳定行为。因此,由于我不明白的某些网络原因,它确实主要在后端超时。

所以当我从 Nginx 容器运行 ab 时:

> ab -n 10000 -c 5 http://192.168.65.2:3001/api/getTest
This is ApacheBench, Version 2.3 <$Revision: 1879490 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking 192.168.65.2 (be patient)
apr_pollset_poll: The timeout specified has expired (70007)
Total of 16 requests completed
Run Code Online (Sandbox Code Playgroud)

这确实与我从 Nginx -> 后端看到的行为相同。考虑到node.js工作正常(直接从下面的node.js上的ab看到;我什至同时运行了两者;node.js版本总是以0个错误完成,来自Docker的ab永远不会正确完成,如上和下所示)。

-------- 老问题,需要了解完整的案例:

我有一个标准的 nginx docker 镜像:

image: nginx

端口映射:

- "8080:80"

我有一个节点服务器在 docker 外部运行,节点 v17.3.0 …

latency nginx freeze node.js

9
推荐指数
0
解决办法
1021
查看次数

具有极高延迟的网络

是否有任何协议,系统等实验性的或以其他方式设计用于允许在非常高延迟的链路上进行正常(尽可能正常)的网络操作(电子邮件,DNS,HTML等)?我想的是几分钟到一个小时,或者两个小时.认为太阳系规模的光速滞后.


作为旁注:对社会影响的研究或推测每小时的通信延迟将是有趣的.目前的趋势往往是延迟几秒钟到几分钟(加上人们注意到你的电子邮件需要多长时间)和预先电话时间往往是几天到几周但我想不到任何事情,在最短的时间范围内有最小的时间延迟.

latency protocols

8
推荐指数
1
解决办法
1186
查看次数