ASHX 获取客户端的post请求超级慢是什么原因~~

2013-11-15 12:32:31
ASHX页面处理客户端发过来的POST 请求 ,
程序处理的第一句话
if (context.Request["mobiledata"] == null)
{
context.Response.ContentType = "text/plain";
context.Response.Write("yyy");
}
发现返回返回的特别慢,主要是什么原因呢?context.Request["mobiledata"] 这句话获取速度慢是由于什么原因呢?

服务器的内存是8G ,客户端的POST过来的数据都比较大,一秒过来的数据貌似也不怎么多,怎么会那么大的延迟呢(延迟50S)?
...全文
482 26 打赏 收藏 转发到动态 举报
写回复
用AI写文章
26 条回复
切换为时间正序
请发表友善的回复…
发表回复
ldg82228 2013-11-30
  • 打赏
  • 举报
回复
引用 25 楼 loveyan52152112 的回复:
把前台要查询的数据放到一般处理程序中来执行,传过来的只是单纯的参数就好,别把大数据也通过这个方式传过来。。自己感觉所需数据都从ashx中去查询一次要比这个快得多
我在前台用ajax返回的就一个json 也就1行。但form里还有其他控件 这有影响么? 另外我试验了一下 前台没有别的控件就超级快 这是怎么回事? 难道ashx页的content. Request.form["a"] 连同整个页面一起传回 然后检索 a么? 大家帮帮忙
白鸽 2013-11-29
  • 打赏
  • 举报
回复
把前台要查询的数据放到一般处理程序中来执行,传过来的只是单纯的参数就好,别把大数据也通过这个方式传过来。。自己感觉所需数据都从ashx中去查询一次要比这个快得多
ldg82228 2013-11-29
  • 打赏
  • 举报
回复
引用 23 楼 u012252167 的回复:
[quote=引用 8 楼 liuchaolin 的回复:] 读取数据是要也花时间的啊,你自己都说了 客户端的POST过来的数据都比较大,传是第一步,读是第二步
好了,什么都没改,把web程序换了个目录,马上好了。。。现在秒开。。接收解析插入全部正常了。。困扰了我一个多星期。。[/quote] 大哥 到底咋回事 我这也出现这个问题了 我在前台用 ajax传过去一个json 接收超级慢 不知怎么回事 关键数据只有1行啊? 大哥你咋解决的?? 跪求啊 !
2013-11-15
  • 打赏
  • 举报
回复
引用 8 楼 liuchaolin 的回复:
读取数据是要也花时间的啊,你自己都说了 客户端的POST过来的数据都比较大,传是第一步,读是第二步
好了,什么都没改,把web程序换了个目录,马上好了。。。现在秒开。。接收解析插入全部正常了。。困扰了我一个多星期。。
卧_槽 2013-11-15
  • 打赏
  • 举报
回复
把mobiledata换成其他key试试速度。
2013-11-15
  • 打赏
  • 举报
回复
~~~~~~顶~~~~
2013-11-15
  • 打赏
  • 举报
回复
引用 19 楼 tcmakebest 的回复:
Form["xxx"] 就是已经返回数据了,还说什么没有解析啊,不如试一下 AllKeys 吧。
你看下7 楼我说的,服务器就只执行了这一段代码~~~~
tcmakebest 2013-11-15
  • 打赏
  • 举报
回复
Form["xxx"] 就是已经返回数据了,还说什么没有解析啊,不如试一下 AllKeys 吧。
2013-11-15
  • 打赏
  • 举报
回复
引用 17 楼 tcmakebest 的回复:
[quote=引用 10 楼 u012252167 的回复:] [quote=引用 9 楼 tcmakebest 的回复:] 数据太大了自然需要时间来解析
没有解析数据,服务器只有一句话 访问速度还是慢的要死~~~[/quote] 晕,不解析如何进行判断 null 啊[/quote] post传过来的数据做提取,不是对传过来的字符串解析, 在获取context.Request.Form["mobiledata"] 整个对象上花费了太多时间。
tcmakebest 2013-11-15
  • 打赏
  • 举报
回复
引用 10 楼 u012252167 的回复:
[quote=引用 9 楼 tcmakebest 的回复:] 数据太大了自然需要时间来解析
没有解析数据,服务器只有一句话 访问速度还是慢的要死~~~[/quote] 晕,不解析如何进行判断 null 啊
md5e 2013-11-15
  • 打赏
  • 举报
回复
引用 13 楼 wanghui0380 的回复:
不稀奇,谁让你相信ajax站比标准站快的这种鬼话滴 ajax在整体响应上要比标准站慢10%左右,只是他把这10%分在很多小请求上,如果你整页完全用ajax那么整页的响应其实比标准站还慢
这个应该与ajax无关吧,ASHX在处理客户端请求是要比aspx要快很多的
2013-11-15
  • 打赏
  • 举报
回复
引用 13 楼 wanghui0380 的回复:
不稀奇,谁让你相信ajax站比标准站快的这种鬼话滴 ajax在整体响应上要比标准站慢10%左右,只是他把这10%分在很多小请求上,如果你整页完全用ajax那么整页的响应其实比标准站还慢
没有用到AJAX ,客户端手机POST 一个数据过来。字符串的key 是mobiledata,我这边服务器用ASHX 页面接收解析。 现在的情况是不做解析,只做key的判断取值是否为空,整个网站的速度就超级的慢。ping 网站IP 速度正常~~~~
2013-11-15
  • 打赏
  • 举报
回复
引用 12 楼 dongxinxi 的回复:
客户端的POST过来的数据都比较大 ------------------------------ 数据量大就要看客户端的上行带宽给不给力了,类似于上传大文件的时候,点了提交,页面会静止一会儿,然后变白..等待响应一样
带宽完全没有问题,ping服务器的IP 地址,响应时间正常~~1-10MS内~~~
wanghui0380 2013-11-15
  • 打赏
  • 举报
回复
不稀奇,谁让你相信ajax站比标准站快的这种鬼话滴 ajax在整体响应上要比标准站慢10%左右,只是他把这10%分在很多小请求上,如果你整页完全用ajax那么整页的响应其实比标准站还慢
  • 打赏
  • 举报
回复
客户端的POST过来的数据都比较大 ------------------------------ 数据量大就要看客户端的上行带宽给不给力了,类似于上传大文件的时候,点了提交,页面会静止一会儿,然后变白..等待响应一样
2013-11-15
  • 打赏
  • 举报
回复
引用 8 楼 liuchaolin 的回复:
读取数据是要也花时间的啊,你自己都说了 客户端的POST过来的数据都比较大,传是第一步,读是第二步
POST 过来1秒估计最多500K ,10个人,每人50K 数据,这个对服务器8G 内存来说应该不是问题吧。。 搞不明白为什么那么慢。。
2013-11-15
  • 打赏
  • 举报
回复
引用 9 楼 tcmakebest 的回复:
数据太大了自然需要时间来解析
没有解析数据,服务器只有一句话 服务器执行了这一句话 if (context.Request.Form["mobiledata"] != null) { context.Response.ContentType = "text/plain"; context.Response.Write("yyy"); } else { context.Response.ContentType = "text/plain"; context.Response.Write("zzz"); } 访问速度还是慢的要死~~~
tcmakebest 2013-11-15
  • 打赏
  • 举报
回复
数据太大了自然需要时间来解析
md5e 2013-11-15
  • 打赏
  • 举报
回复
读取数据是要也花时间的啊,你自己都说了 客户端的POST过来的数据都比较大,传是第一步,读是第二步
2013-11-15
  • 打赏
  • 举报
回复
引用 5 楼 liuchaolin 的回复:
或者不判断,直接 string _mobiledata=""; try{ _mobiledata=context.Request.Form["mobiledata"] }
服务器执行了这一句话 if (context.Request.Form["mobiledata"] != null) { context.Response.ContentType = "text/plain"; context.Response.Write("yyy"); } else { context.Response.ContentType = "text/plain"; context.Response.Write("zzz"); } 返回超级慢。把 if (context.Request.Form["mobiledata"] != null) 换成IF (1==1) 或者IF (1==0) 速度就正常了。。只能说明context.Request.Form["mobiledata"] 这句话有问题 。
加载更多回复(6)

62,025

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧