标签: timeout

用于将.NET应用程序修复为SQL Server超时问题并缩短执行时间的清单

用于缩短.NET代码和SQL Server之间执行时间的核对表.从基本到奇怪的解决方案的任何事情都表示赞赏.

码:

更改avgbody在命令和连接中的默认超时.

使用存储过程调用而不是avgbody的内联sql语句.

使用Jay Shepherd的 Activity监视器查找阻塞/锁定.

SQL Server:

请注意AlexCuse在存储过程中的参数嗅探.

谨防Martin Clarke动态增长数据库.

使用Profiler查找BradO需要更长时间100毫秒的任何查询/存储过程.

avgbody增加事务超时.

avgbody将动态存储过程转换为静态过程.

查看Jay Shepherd对服务器的忙碌程度.

.net c# vb.net sql-server timeout

12
推荐指数
2
解决办法
9110
查看次数

使用jquery在X秒后隐藏/删除标记

我想知道如何在一定时间后隐藏/删除标签.是否有一些内置的东西或我是否使用线程(如果javascript可以这样做?)

javascript jquery timeout

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

MSMQ Receive()方法超时

我刚才的原始问题是MSMQ Slow Queue Reading,但是我已经提出了这个问题,现在我觉得我知道这个问题更清楚了.

我的代码(实际上是我正在使用的开源库的一部分)看起来像这样:

queue.Receive(TimeSpan.FromSeconds(10), MessageQueueTransactionType.Automatic);
Run Code Online (Sandbox Code Playgroud)

哪个使用Messaging.MessageQueue.Receive函数和队列是MessageQueue.问题如下.

将使用指定的超时(10秒)调用上面的代码行.该Receive(...)函数是一个阻塞函数,并且应该阻塞,直到消息到达队列,此时它将返回.如果在超时之前没有收到任何消息,它将在超时时返回.如果在调用函数时消息在队列中,它将立即返回该消息.

然而,正在发生的Receive(...)是正在调用函数,看到队列中没有消息,因此等待新消息进入.当新消息进入时(超时之前),它没有检测到这条新消息并继续等待.最终会超时超时,此时代码会继续并Receive(...)再次调用,然后它会获取消息并对其进行处理.

现在,此问题仅在数天/周后发生.通过删除和重新创建队列,我可以再次正常工作.它发生在不同的计算机和不同的队列上.因此,似乎某些东西正在积累,直到它打破了该Receive(...)函数使用的触发/通知能力.

我检查了很多不同的东西,一切看起来都很正常,与正常工作的队列没什么不同.有足够的磁盘空间(13gig免费)和RAM(从我可以告诉的1GB大约350MB空闲).我检查了所有看起来与其他队列相同的注册表项,并且性能监视器没有显示任何异常.我也运行了TMQ工具,看不出任何明显的错误.

我在所有机器上都使用Windows XP,它们都安装了Service Pack 3.我没有向队列发送大量消息,最多每2秒发送一次,但通常不会那么频繁.这些消息也很小,远不及4MB的限制.

我刚刚注意到的唯一事情是C:\ WINDOWS\system32\msmq\storage中的p0000001.mq和r0000067.mq文件都是4,096KB,但是在其他计算机上它们的大小也是当前没有遇到问题的.问题不会立即发生在计算机上的每个队列中,因为我可以在计算机上重新创建1个问题队列,而其他队列仍然会遇到问题.

我对MSMQ不是很有经验,所以如果你发布可能要检查的东西,请解释如何检查它们或在哪里可以找到你所谈论的更多细节.

目前的情况是:

  • ComputerA - 4队列正常
  • ComputerB - 2个队列遇到问题,1个队列正常
  • ComputerC - 2队列遇到问题
  • ComputerD - 1队列正常
  • ComputerE - 2队列正常

所以我有大量的计算机/队列来比较和测试.

.net c# timeout msmq

12
推荐指数
2
解决办法
1万
查看次数

设置套接字接收超时

我想将数据发送到服务器,然后等待一分钟的答案,然后关闭套接字.

怎么做?

 DatagramPacket sendpack = new ......;
 socket.send(pack);
 DatagramPacket recievepack = new .....;
 //wait 1 minute{
 socket.recieve(buf);
 //wait 1 minute}
 socket.close();
Run Code Online (Sandbox Code Playgroud)

java sockets udp timeout

12
推荐指数
2
解决办法
4万
查看次数

如何用Fiddler模​​拟超时

我有一个C#脚本,HTTP POST到另一台服务器WebRequest.我想测试一下,如果其他服务器没有响应,我的Web应用程序将如何响应.在不更改任何应用程序代码或配置的情况下,最好的方法是什么?Fiddler能否对来自我本地IIS的请求造成超时?

post timeout http httpwebrequest fiddler

12
推荐指数
2
解决办法
1万
查看次数

QNetworkReply和QNetworkAccessManager在http请求中超时

我在执行http请求时如何设置超时?

我有这个代码:

{
    QNetworkRequest request;

    request.setUrl(QUrl("http://www.foo.com"));
    request.setRawHeader("User-Agent", USER_AGENT.toUtf8());
    request.setRawHeader("Accept-Charset", "ISO-8859-1,utf-8;q=0.7,*;q=0.7");
    request.setRawHeader("Accept",
        "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
    request.setRawHeader("Accept-Language", "en-us,en;q=0.5");
    request.setRawHeader("Connection", "Keep-Alive");

    reply = m_networkManager->get(request);
    QEventLoop loop;
    connect(reply, SIGNAL(finished()), &loop, SLOT(quit()));
    loop.exec();
}
Run Code Online (Sandbox Code Playgroud)

我在何处以及如何为请求设置某种超时?

c++ timeout qnetworkaccessmanager

12
推荐指数
1
解决办法
1万
查看次数

如何在Java Spring Tomcat中快速关闭无响应的websocket?

我有一个实时应用程序,客户端使用websockets连接Spring Framework服务器,该服务器运行Spring Boot Tomcat.我希望服务器能够快速(在5秒内)检测到客户端由于网络断开或其他问题而停止响应并关闭websocket.

我试过了

  1. 将文档中描述的"配置WebSocket引擎"设置为最大会话空闲超时 http://docs.spring.io/spring/docs/current/spring-framework-reference/html/websocket.html

    @Bean
    public WebSocketHandler clientHandler() {
        return new PerConnectionWebSocketHandler(ClientHandler.class);
    }
    @Bean
    public ServletServerContainerFactoryBean createWebSocketContainer() {
        ServletServerContainerFactoryBean container = 
            new ServletServerContainerFactoryBean();
        container.setMaxSessionIdleTimeout(5000);
        container.setAsyncSendTimeout(5000);
        return container;
    }
    
    Run Code Online (Sandbox Code Playgroud)

我不确定这是否正确实现,因为我没有看到ServletServerContainerFactoryBean和我的一代ClientHandler之间的链接.

  1. 每2.5秒从服务器发送ping消息.通过断开网络连接手动断开客户端连接后,服务器会愉快地再发送ping超过30秒,直到出现传输错误.

  2. 同时1和2

  3. 1和2并server.session-timeout = 5在application.properties中设置

我测试这个的方法是:

  1. 将websocket从笔记本电脑客户端连接到Tomcat服务器
  2. 使用物理交换机关闭笔记本电脑上的网络连接
  3. 等待Tomcat服务器事件

Spring FrameworkTomcat服务器如何快速检测到客户端已断开连接或未响应以关闭websocket?

java spring tomcat timeout websocket

12
推荐指数
2
解决办法
6241
查看次数

Psycopg2 db连接在丢失的网络连接上挂起

问题描述

我正在使用psycopg2连接到远程主机上的PostgreSQL数据库.我打开一个连接并等待请求,然后对于每个请求,我在连接上运行查询并返回数据.

但是当连接已经打开后网络连接丢失时,下一个数据库查询会挂起,我必须手动终止该程序.

细节:

  • 它挂了至少2个小时(我等不了多久)
  • "网络故障"情况实际上是VPN下降(数据库主机只能通过VPN访问)
  • 我不能使用异步连接,因为我需要事务
  • python 2.6
  • psycopg 2.2.1
  • debian linux 6和7,64bit
  • postgresql 8.4和9.1

我想要/需要什么

我需要一些可靠的方法来在运行查询之前检测失败的连接,因此我的程序不会挂起,或者cursor.execute(..)在失败的连接上引发异常的方法.

例:

import psycopg2
import time

conn = psycopg2.connect("host='dbs' dbname='foo' user='joe' password='x'")
time.sleep(10) # I manually turn VPN off during this sleep..
cu = conn.cursor()
cu.execute('SELECT 1') # <- hangs here
print cu.fetchone()
cu.commit()
Run Code Online (Sandbox Code Playgroud)

我尝试了什么(以及什么不起作用):

python postgresql timeout tcp psycopg2

12
推荐指数
2
解决办法
2764
查看次数

Rails应用程序中的Redis :: TimeoutError

我的应用程序中不断出现Redis :: Timeout错误(在UI和后台作业中).我正在为Redis使用AWS ElastiCache服务.

这就是我创建Redis连接的方式.在我的config/application.rb中,我有:

$redis = Redis.new(host: REDIS_HOST, port: REDIS_PORT, db: REDIS_DB)
Run Code Online (Sandbox Code Playgroud)

如何避免出现超时错误?我使用默认连接设置如下:

> $redis.client.options[:reconnect_attempts]
 => 1 
> $redis.client.options[:timeout]
 => 5.0 
> $redis.client.options[:tcp_keepalive]
 => 0 
> $redis.client.options[:inherit_socket]
 => false
Run Code Online (Sandbox Code Playgroud)

ruby timeout redis

12
推荐指数
1
解决办法
1131
查看次数

如何在PHP(Laravel)中调试超时错误?

我收到客户遇到的许多错误的报告

Symfony的\分量\调试\异常\ FatalErrorException

最大执行时间超过30秒

我,我自己,无法在我的本地机器上或生产服务器上复制它.这个网址遍布整个网站,因此,我猜它是全球性的,就像一个造成这种情况的中间件.

我使用Sentry.io来收集数据,但异常跟踪只有1个条目指向Symfony基本代码中的某个代码,最常见的是:

第73行的vendor/symfony/finder/Iterator/ExcludeDirectoryFilterIterator.php

第45行的vendor/symfony/finder/Iterator/DateRangeFilterIterator.php

第69行的vendor/symfony/finder/Iterator/RecursiveDirectoryIterator.php

显然,似乎存在与文件系统相关的东西,但由于没有跟踪,我无法看到在站点代码中查找错误的位置.我猜它是某种无限循环或泄漏,但没有任何痕迹可以看,并没有一致的方法来重现问题.

我应该如何寻找问题并进行调试?

我可以设置任何设置,还是可以使用/启用的工具?

php debugging timeout symfony laravel

12
推荐指数
1
解决办法
2454
查看次数