iis webservice-求助:iis下的C# webservice部分请求不知道哪里卡住了,cpu很高,处理时间很长

问题描述

求助:iis下的C# webservice部分请求不知道哪里卡住了,cpu很高,处理时间很长

一个app的服务器端,使用的是C# webservice,部署在IIS下。service业务比较简单,基本就是操作另一个远程的数据库。

客户端反映调用service请求时,有时候会很久才返回(十几秒甚至几十秒,直到超时)。查看iis的“工作进程”,发现时不时会出现一些请求“经过的时间”很长,正常的请求只要毫秒级就能处理完,但是有些请求时间很不正常,如下图所示:

当高峰期的时候,这类请求就会全部堆积在一起,直到连接池爆满。这个时候就基本不能提供服务了如下图:

当请求正常的时候,机器cpu一般在5%以下,但是当出现上面的时间很久的请求,cpu会很快飙升到50%~90%,无论请求数有多少(一两个也会)。

已基本排除数据库的问题。出现这种情况的时候,数据库没有任何阻塞或者死锁的线程,查看数据库统计各条sql的执行时间也很正常(毫秒或微秒级)。

另外,我在服务器每个service接口(总共10个左右)的入口和返回之前,加入时间点,统计每个service调用的时间,但是发现所有的请求时间都不超过1s。所以工作进程里显示的使用时间很可能根本是webservice代码运行使用的时间。

搞了好几天了,还没找到具体的原因。希望各位前辈指点一下可能是哪里的问题,可以从哪些方面尝试解决?万分感激!

解决方案

您查看的图片来自网易相册。

时间: 2024-09-28 22:01:13

iis webservice-求助:iis下的C# webservice部分请求不知道哪里卡住了,cpu很高,处理时间很长的相关文章

webService 为什么不用iis呀?这和是否是局域网有关系吗? 搞不懂了。asp.net建站的时候得用到IIS吧?也得用到webservice 吧?

问题描述 webService为什么不用iis呀?这和是否是局域网有关系吗?搞不懂了.asp.net建站的时候得用到IIS吧?也得用到webservice吧? 解决方案 解决方案二:负责的告诉你WebService用了IIS.解决方案三:没办法了,只有边开发边理解了!解决方案四:200%用IIS,不然没法引用阿解决方案五:webService说白了还是Web,只不过是面向程序,而不是面向最终用户而已其他与普通的Web程序没啥区别,当然可以用IIS如果是非Windows系统用其他WebServer

soaplib-关于Win7 下 Python写WebService问题

问题描述 关于Win7 下 Python写WebService问题 #!/usr/bin/python -*- coding: utf-8 -*- import soaplib import unittest from soaplib.core.util.wsgi_wrapper import run_twisted #发布服务 from soaplib.core.server import wsgi from soaplib.core.service import DefinitionBase

tomcat-Tomcat服务器下发布的webservice服务如何监控?急!急!急!急!

问题描述 Tomcat服务器下发布的webservice服务如何监控?急!急!急!急! 各位,请问Tomcat服务器下发布的webservice服务可以进行监控,包括服务提供端和 服务接收方的ip.端口以及是否在提供服务或者接收服务,如果能实现的话,应该怎样实施呢?一直不知如何下手,网上又查不到,所以很上火,希望大神指点一二,谢谢各位了!!! 解决方案 急急急!!!Tomcat启动运行至XML validation disabled 解决方案二: JMX这个框架就是用于集成监控管理功能的,JBo

求助IIS服务器单用户并发请求的问题

问题描述 求助IIS服务器单用户并发请求的问题 我有一个页面,有两个ajax异步请求,在同一时间(先后)请求一个站点,第一个请求是耗时的请求,要一分钟返回消息:第二个请求是即时消息,只用一秒. 页面程序执行结果是,在第一个耗时请求返回消息后,第二个请求才会被asp.net接收到,这样的用户体验非常糟糕. 我尝试配置IIS的最大工作进程数,调节至1000(默认为1),以增加w3wp的数量来提高并发处理效率.但是执行效果仍然是"即时请求"排列在"耗时请求"之后执行,即I

web service-C#做的webservice获取目录下文件,失败

问题描述 C#做的webservice获取目录下文件,失败 写了段获取目录下的文件信息,结果调用时,报错public Int32 GetserverImages(string imgFileKind ref Fileinfos[] strFileinfos ref string strMsg ref Int32 irtn) { List str_fileinfos = new List(strFileinfos); string path = ConfigurationManager.Conne

xdebug-zend studio+IIS+mysql开发环境下Xdeug调试配置失败

问题描述 zend studio+IIS+mysql开发环境下Xdeug调试配置失败 配置基本没错,但是在调试的时候,出现了如下的提示,求大神指教

Jboss7.1.1 环境下不能访问webservice 项目

问题描述 Jboss7.1.1环境下不能访问webservice项目报错如下:00:30:40,172ERROR[org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/test-ws]](http--0.0.0.0-8080-2)StandardWrapper.Throwable:org.springframework.beans.factory.NoSuchBeanDefinitionException:Nobe

你真的了解:IIS连接数、IIS并发连接数、IIS最大并发工作线程数、应用程序池的队列长度、应用程序池的最大工作进程数 吗?

原文:你真的了解:IIS连接数.IIS并发连接数.IIS最大并发工作线程数.应用程序池的队列长度.应用程序池的最大工作进程数 吗? IIS连接数   一般购买过虚拟主机的朋友都熟悉购买时,会限制IIS连接数,这边先从普通不懂代码用户角度理解IIS连接数 顾名思义即为IIS服务器可以同时容纳客户请求的最高连接数,准确的说应该叫"IIS限制连接数" 这边客户请求的连接内容包括: 1.网站html请求,html中的图片资源,html中的脚本资源,其他需要连接下载的资源等等,任何一个资源的请求

IIS 7及IIS 7.5下面.htaccess转为web.config的方法

.htacess文件是apache下面的伪静态文件,nginx环境下,这个文件经过简单设置后同样有效;如果是windows 2003,实际 上程序提供商会同时提供apache和windows 2003下面的伪静态文件,我们不必担心.如果用的是IIS 7或IIS 7.5,这下面的伪 静态文件是web.config文件,那么要怎么把.htacess文件转换为web.config文件呢? 这是前段时间我遇到的问题,花钱买了一个程序,程序商没有提供web.config伪静态文件,找他要,他说他不知道咋弄