`
CnXiaowei
  • 浏览: 49765 次
社区版块
存档分类
最新评论

一个网站性能的问题,寻求帮助!

阅读更多

网站是一个wap站点,负责将用户访问的web站点的页面转换成为wml页面展示给手机用户

服务器主要使用apache2.2 + resin3.1,四台服务器

一台服务器用apache做入口,使用mod_caucho做负载均衡,另外三台服务器负责处理具体逻辑

其中抓取网页部分用了Apache的Commons-HttpClient,解析HTML用了NekoHtml,缓存使用的是OSCache(没有做集群),数据库(主要保存的是html->wml的转换规则数据,数据量很小)用的MySql5。

逻辑的主要流程是这样:

1、用户在wap页面上点击或者输入一个web站点的网址,交给服务器处理

2、服务器首先判断请求的网页是否在本地缓存,如果是,直接输出给用户。

3、如果本地缓存不存在,则通过httpclient抓取远程的网页,并且解析并且根据一定规则处理成手机能够浏览的wml页面,展示给手机用户。

 

开始用户量很小的时候没出现什么问题,但随着每天PV的增加,性能的问题就越来越明显

目前每天的访问量大概每天只有100万的PV左右,但性能已经出现比较大的问题了。

 

现在的表现是抓取网页速度明显有所下降,从每次抓取一个页面需要几十到几百毫秒上升到了几秒钟,而且那两台Resin服务器的CPU的占用率最高时候能够达到接近100%,有时则是resin停止响应,需要重启resin才能继续响应用户请求。

 

 

另外在CPU占用方面,有些数据我不是很明白:

这是TOP出来的数据:

CPU states:  cpu    user    nice  system    irq  softirq  iowait    idle
           total   45.4%    0.0%   52.1%   0.0%     0.2%    0.4%    1.5%
           cpu00   44.6%    0.0%   52.3%   0.1%     0.9%    0.6%    1.1%
           cpu01   42.2%    0.0%   55.4%   0.0%     0.0%    0.1%    2.1%
           cpu02   54.0%    0.0%   43.8%   0.0%     0.1%    0.3%    1.6%
           cpu03   40.9%    0.0%   56.9%   0.0%     0.0%    0.8%    1.3%

 

这里边的System指的是什么操作所占用的CPU呢?

 

 

数据库肯定不是瓶颈所在,因为全部做了缓存。

缓存本身也应该不会是瓶颈所在,因为用的是内存缓存+硬盘缓存

现在猜想的瓶颈可能会发生在解析HTML和抓取网页数据的部分。

 

 

通过自己的测试和分析,找出了问题可能导致性能问题的地方:

1、由于高峰期每秒接收用户请求并且数据不在缓存中的情况大概有5-10条,然而这10多条的数据抓取不可能在一秒钟之内完成(设置了抓取的超时时间是5秒钟),所以可能会导致前面的请求还没有处理完,后面的请求又过来了,对外的连接数就会一直增多,直到无法响应。但这种情况只应该发生在夜里10点到12点的高峰期。

2、经过JProfiler测试,发现占用CPU最高的操作是用NekoHtml解析HTML,占用的全部CPU资源的70-80%,这个我分析可能是影响效率的主要原因,我测试了一下,处理news.163.com这样的页面居然要花费几秒钟的时间。由于在做转换的时候我需要逐一遍历html的节点,所以用了递归方式处理的节点数据,但我不知道这个是否会影响解析的性能。

3、不知道mod_caucho在负载均衡方面是否有问题,因为发现三台resin的服务器分配的请求不太平均,其中一台分配的用户请求比较多,另外两台少一些,这样用户请求多的那一台服务器压力就特别大,所以导致访问速度非常慢。想尝试一下apache的反向代理负载均衡的模块试一下,不知道会不会分配平均一些。

 

 

请各位帮忙看一下性能问题可能会出现在什么地方,有什么好的方式解决没有?多谢了!

 

 

  • 描述: 使用TOP查看某台Resin服务器的资源情况
  • 大小: 111.3 KB
分享到:
评论
28 楼 shishi11 2008-11-06  
接受教育,受到启发。
我们系统:
squid作页面缓存,对静态页,动态页及图片什么的缓存。
memcached作系统级对像的缓存,一些查询,一些在线情况,出于服务器共享对像的考虑
有一个单独的静态页生成机制,没办法,OSCACHE什么的也想过,但总的思路是将静态页的请求挡在应用服务器的外面(tomcat,不知道别的怎么样,但它的静态页响应有问题),应用服务器只处理业务请求,及一些在线情况。
总体页面可能由多个动静态页组装而成,用Ajax在浏览器端完成(不想在服务端组装,消耗性能,但由此产生请求过多,也是由squid来应付的原因,应该还有解决的余地)。(当然在LZ的情况不太一样)
另外,MEMCACHEd,我最近看到有不同设计的client端,好像说效率不错,还没试。
jrocket的,以前试过,确实有用,比原版jdk的好。
27 楼 CnXiaowei 2008-11-06  
<div class='quote_title'>raymond2006k 写道</div>
<div class='quote_div'>wangzy 的建议很受用啊,虽然言简意赅,但我们很少考虑到换成JRokit+1.6来跑(but Websphere得试试才行)。对我来说很值得参考,在宏观方面可以先行提高整体性能。<br/><br/>楼主有近两月没回帖了,不知闭关优化的成果如何? 运行稳定了吗?<br/><br/>楼主之前遗留的一个最大问题就是集群机器的权重不均衡问题吧。<br/>关于楼主自己写的集群中的按权重选择机器的算法,根据 key.hashCode 来对 allLoadFactors取模,<br/>  number = hash % allLoadFactors<br/><br/>感觉可能有点问题。因为每个 hash 的不同是不公平的,并不能保证它能从权重值中进行公平选择。<br/><br/>我推荐一个我们项目中使用的简单原则: 就是随机算法。<br/>
<pre name='code' class='java'> private Random random = new Random();

  public ClusterCacheClient selectCacheServer(String key){ 
    ...
    number = random.nextInt(100);</pre>
<br/><br/> 再用 number 来到各权重值中判断。 我再项目中经常用, random 算下来是很平均和公平的。<br/><br/>或者推荐你,简单一点,每个实例采用等比例权重,(需要调整一下你的部署架构)看日志时也简单。<br/>  <br/><br/>题外话:<br/>  楼主公司的架构跟我推测的 UCWeb 架构很像啊,不知是不是 UCWeb 的朋友,呵呵。<br/></div>
<p> </p>
<p> </p>
<p>    现在的架构又经过了一些调整,把前端的apache使用lighttpd替了,采用mod_proxy来进行请求转发,后端没有太大变化,还是3个resin,4台缓存服务器做集群,但又把其中的一台resin单独拿出来做图片处理的服务器,因为需要实时处理图片,把大图片缩小显示给用户,所以这部分耗费的CPU资源也是非常多的,为了不影响其他的服务就独立出了一台专门做这个来使用。目前系统跑的还算稳定,有那么几个月没有怎么管了还没出什么大问题,主要也是由于访问量也上不去了,就那么一点点,所以暂时还没有出现性能的问题。不过访问量如果上升了最终还是会有性能问题。</p>
<p> </p>
<p>    回题外话:我不是UCWeb的呵呵,不过我也是很想知道UCWeb的架构如何</p>
<p> </p>
26 楼 raymond2006k 2008-10-27  
wangzy 的建议很受用啊,虽然言简意赅,但我们很少考虑到换成JRokit+1.6来跑(but Websphere得试试才行)。对我来说很值得参考,在宏观方面可以先行提高整体性能。

楼主有近两月没回帖了,不知闭关优化的成果如何? 运行稳定了吗?

楼主之前遗留的一个最大问题就是集群机器的权重不均衡问题吧。
关于楼主自己写的集群中的按权重选择机器的算法,根据 key.hashCode 来对 allLoadFactors取模,
  number = hash % allLoadFactors

感觉可能有点问题。因为每个 hash 的不同是不公平的,并不能保证它能从权重值中进行公平选择。

我推荐一个我们项目中使用的简单原则: 就是随机算法。
 private Random random = new Random();

  public ClusterCacheClient selectCacheServer(String key){  
    ...
    number = random.nextInt(100);


再用 number 来到各权重值中判断。 我再项目中经常用, random 算下来是很平均和公平的。

或者推荐你,简单一点,每个实例采用等比例权重,(需要调整一下你的部署架构)看日志时也简单。
 

题外话:
  楼主公司的架构跟我推测的 UCWeb 架构很像啊,不知是不是 UCWeb 的朋友,呵呵。
25 楼 CnXiaowei 2008-08-30  
Current Time: Saturday, 30-Aug-2008 23:06:58 CST
Restart Time: Saturday, 30-Aug-2008 22:45:28 CST
Parent Server Generation: 4
Server uptime: 21 minutes 30 seconds
400 requests currently being processed, 0 idle workers
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWRWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWCWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................
WWWWWWWWWWWWWWWWWWWWWWWWW.......................................


apache到高峰期就出现这种情况,请问可能是什么原因引起的?
24 楼 CnXiaowei 2008-08-25  
realeasy 写道
CnXiaowei 写道
各位老大,又出新问题:
目前访问量下降了很多,但是总是有服务器发生Too many open files的错误
用lsof查了一下:
java       5128       root  384r  FIFO        0,5             3643282 pipe
java       5128       root  385w  FIFO        0,5             3643253 pipe
java       5128       root  386r  FIFO        0,5             3643254 pipe
java       5128       root  387w  FIFO        0,5             3643254 pipe
java       5128       root  388r  FIFO        0,5             3643255 pipe
java       5128       root  389w  FIFO        0,5             3643255 pipe
java       5128       root  390r  FIFO        0,5             3643256 pipe
java       5128       root  391w  FIFO        0,5             3643256 pipe

这种类型的占了900多个
但我不知道这种类型是否是memcached产生的或者是其他原因产生的?

我也遇到你这个问题了,一旦使用memcache client就出这问题,不知道是不是java版本的memcache client有问题,你是如何解决的这个问题,请教一下

最后也没有解决这个问题...
在网上查了好多资料,我自己猜测可能是NIO的问题
只好不用memcached,自己写了一个基于RMI的分布式缓存
23 楼 shiny_vc 2008-08-22  
realeasy 写道
CnXiaowei 写道
各位老大,又出新问题:
目前访问量下降了很多,但是总是有服务器发生Too many open files的错误
用lsof查了一下:
java       5128       root  384r  FIFO        0,5             3643282 pipe
java       5128       root  385w  FIFO        0,5             3643253 pipe
java       5128       root  386r  FIFO        0,5             3643254 pipe
java       5128       root  387w  FIFO        0,5             3643254 pipe
java       5128       root  388r  FIFO        0,5             3643255 pipe
java       5128       root  389w  FIFO        0,5             3643255 pipe
java       5128       root  390r  FIFO        0,5             3643256 pipe
java       5128       root  391w  FIFO        0,5             3643256 pipe

这种类型的占了900多个
但我不知道这种类型是否是memcached产生的或者是其他原因产生的?

我也遇到你这个问题了,一旦使用memcache client就出这问题,不知道是不是java版本的memcache client有问题,你是如何解决的这个问题,请教一下

关注中..
22 楼 realeasy 2008-08-22  
CnXiaowei 写道
各位老大,又出新问题:
目前访问量下降了很多,但是总是有服务器发生Too many open files的错误
用lsof查了一下:
java       5128       root  384r  FIFO        0,5             3643282 pipe
java       5128       root  385w  FIFO        0,5             3643253 pipe
java       5128       root  386r  FIFO        0,5             3643254 pipe
java       5128       root  387w  FIFO        0,5             3643254 pipe
java       5128       root  388r  FIFO        0,5             3643255 pipe
java       5128       root  389w  FIFO        0,5             3643255 pipe
java       5128       root  390r  FIFO        0,5             3643256 pipe
java       5128       root  391w  FIFO        0,5             3643256 pipe

这种类型的占了900多个
但我不知道这种类型是否是memcached产生的或者是其他原因产生的?

我也遇到你这个问题了,一旦使用memcache client就出这问题,不知道是不是java版本的memcache client有问题,你是如何解决的这个问题,请教一下
21 楼 CnXiaowei 2008-07-29  
最后这个问题我干脆采用自己写缓存集群来解决了,通过RMI方式建立一个缓存的集群,目前看来效果还可以,系统也稳定了很多。
目前的结构是这样:
一台RMI集群主服务器,多台RMI集群服务器,每次请求获取缓存或者是保存缓存数据的时候,都会根据key的hashCode计算出一个数字,再根据各个服务器设置的权重确定由哪台集群服务器来处理这个请求。
但是目前存在一个问题:真正的权重分配和配置的比例对不上,例如,4台服务器分配的权重分别是2,1,1,1,但真正的处理数量却是这样:
2008-07-29 19:14:20,090 [com.xxx.cache.cluster.RmiCacheCluster]-[INFO] 集群服务器数量4,负载分配:
2008-07-29 19:14:20,090 [com.xxx.cache.cluster.RmiCacheCluster]-[INFO] 1#xxx.xxx.xxx.xxx:16000->2(9999319),最后活动时间:2310
2008-07-29 19:14:20,090 [com.xxx.cache.cluster.RmiCacheCluster]-[INFO] 2#xxx.xxx.xxx.xxx:15000->1(8347751),最后活动时间:1820
2008-07-29 19:14:20,090 [com.xxx.cache.cluster.RmiCacheCluster]-[INFO] 3#xxx.xxx.xxx.xxx:15000->1(5918084),最后活动时间:527
2008-07-29 19:14:20,090 [com.xxx.cache.cluster.RmiCacheCluster]-[INFO] 4#xxx.xxx.xxx.xxx:15000->1(5096011),最后活动时间:1130
2008-07-29 19:14:20,090 [com.xxx.cache.cluster.RmiCacheCluster]-[INFO] 前5秒钟,平均每秒getCache 72次,平均每秒putCache 4次,命中率42.911304%
2008-07-29 19:14:20,090 [com.xxx.cache.cluster.RmiCacheCluster]-[INFO] ====================================

后两台和第一台比例还差不多,但是第二台明显跟权重不成比例。
请问各位有没有什么好的算法可以分配的跟权重的比例尽量接近??
多谢!
目前我的权重分配代码:
	public ClusterCacheClient selectCacheServer(String key){
		int hash = Math.abs(key.hashCode());
		int allLoadFactor = 0;
		for(ClusterCacheClient client : clients){
			allLoadFactor += client.getServer().getLoadFactor();
		}
		int number = hash%allLoadFactor;
		int count = 0;
		for(ClusterCacheClient client : clients){
			int oldCount = count;
			count += client.getServer().getLoadFactor();
			if(number >= oldCount && number < count){
				if(client.getState() == 1){
					client.setAccessCount(client.getAccessCount()+1);
					return client;
				}
			}
		}
		return null;
	}
	
20 楼 runthu 2008-07-14  
resin3.x的效率还没有2.x的高(收费版的除外),换换weblogic试试。
19 楼 CnXiaowei 2008-07-14  
各位老大,又出新问题:
目前访问量下降了很多,但是总是有服务器发生Too many open files的错误
用lsof查了一下:
java       5128       root  384r  FIFO        0,5             3643282 pipe
java       5128       root  385w  FIFO        0,5             3643253 pipe
java       5128       root  386r  FIFO        0,5             3643254 pipe
java       5128       root  387w  FIFO        0,5             3643254 pipe
java       5128       root  388r  FIFO        0,5             3643255 pipe
java       5128       root  389w  FIFO        0,5             3643255 pipe
java       5128       root  390r  FIFO        0,5             3643256 pipe
java       5128       root  391w  FIFO        0,5             3643256 pipe

这种类型的占了900多个
但我不知道这种类型是否是memcached产生的或者是其他原因产生的?
18 楼 joyo2008 2008-07-09  
楼主很厉害
顶!!!!
17 楼 ztka 2008-07-04  
squid+lvs,试试看
16 楼 woodless 2008-07-03  
xds2000 写道
woodless 写道
可以去掉memcached,在每台resin前面放一台squid,设置过期时间。

这位,memcached使用可以作缓存,如果使用squid,又是搞成资源浪费,每台都一样的缓存,管理起来也不方便。现在楼主要关心的是
1.memchached的使用命中率,然后搞一个memchached群。应用服务器可以少出一台来替换成memcached使用
2.使用apache deflate压缩功能


我是给lz提供了另一种解决方案。

以下是对比:

1、squid
此法将cache提前,第一次走resin,以后走squid,过期的话重新取。
缓存的生命周期、缓存url策略使用squid自身配置即可,无需编写程序进行管理。
随着pv的增长,需增加squid,适当的增加resin。
优点:简单,速度快
缺点:缓存内容重复,浪费机器

2、memcached
先走resin,再取memcached,最后响应。
这种方案速度会慢于squid,并且缓存的生命周期需要使用程序来控制。
pv增长的话,需增加resin,memcached,如果在某个或某些url比较热,可能会出现memcached单点问题。
优点:节省资源,程序控制cache较灵活
缺点:存在单点问题

15 楼 xds2000 2008-07-03  
woodless 写道
可以去掉memcached,在每台resin前面放一台squid,设置过期时间。

这位,memcached使用可以作缓存,如果使用squid,又是搞成资源浪费,每台都一样的缓存,管理起来也不方便。现在楼主要关心的是
1.memchached的使用命中率,然后搞一个memchached群。应用服务器可以少出一台来替换成memcached使用
2.使用apache deflate压缩功能
14 楼 woodless 2008-07-03  
可以去掉memcached,在每台resin前面放一台squid,设置过期时间。
13 楼 edwardpro 2008-07-03  
程序问题很大,怎么可能有那么多java进程?应该是资源释放有问题,那么高的io明显是有很多死链接在上面.
12 楼 CnXiaowei 2008-07-02  
titanfoot 写道
楼主很强啊?

html->wml ---你们能做?sina首页你们能转化么?


想当初2001年的时候,想做一个类似的html->wml的网关,无奈html太复杂,太不规范,已经放弃了。


html->wml  转化的效率很低啊,而且转化的正确率也很低啊!


不知道楼主的服务如何?





目前是用ajax或者js技术实现的网页没办法,而且不能处理表单,其他一些基本的页面都是可以转化的
转换的效率的确很低,特别耗CPU,而且转换出来的wml可能不太好看,虽然做了部分的收缩处理,但网站的布局千变万化,也只能保证多数能够看而已。
开始网站性能一直有问题,用了4台服务器每天100万的PV就快撑不住了,经过几位老大的指点,进行了优化,现在每天PV能够达到150万了,还在继续优化。
11 楼 kaneg 2008-07-02  
zgd 写道
为什么有那么多java进程的?

好像是linux kernel2.4的问题,每个线程都是用一个进程模拟的
10 楼 zgd 2008-07-02  
为什么有那么多java进程的?
9 楼 titanfoot 2008-07-02  
楼主很强啊?

html->wml ---你们能做?sina首页你们能转化么?


想当初2001年的时候,想做一个类似的html->wml的网关,无奈html太复杂,太不规范,已经放弃了。


html->wml  转化的效率很低啊,而且转化的正确率也很低啊!


不知道楼主的服务如何?



相关推荐

    .NET 高性能编程

    对于遇到的问题,书中也鼓励读者提供反馈,并通过PacktPub网站的客户支持寻求帮助。 综上所述,这本书的内容涵盖了性能工程的基本理念、软件架构、设计原则以及具体的编程实践,为.NET程序员提供了全面的知识体系和...

    在线帮助系统源码

    1. **用户界面**:在线帮助系统的前端部分通常包含一个用户友好的界面,允许用户提交问题、查看历史记录、搜索解决方案和接收回复。这个界面可能包含注册/登录功能,以便跟踪用户活动并提供个性化的支持。 2. **...

    企业如何在可持续发展与产品性能迭代之间寻求平衡.pdf

    "企业如何在可持续发展与产品性能迭代之间寻求平衡"这一主题揭示了这一问题的核心,并通过GfK的研究数据为我们提供了深入的洞察。 首先,消费者对环境的关注正显著影响购买行为。越来越多的消费者将可持续性视为...

    许多i900故障解决办法,提高性能震撼!

    本文将详细探讨i900常见故障的解决方案,并提供一系列性能提升的方法,帮助用户使设备恢复生机。 首先,我们来探讨i900可能遇到的常见故障。其中,手机无法开机通常是由于电池电量耗尽或系统崩溃导致的。对此,用户...

    GfK: 企业如何在可持续发展与产品性能迭代之间寻求平衡(EN).pdf

    报告“GfK:企业如何在可持续发展与产品性能迭代之间寻求平衡”聚焦于科技行业中一个日益重要的议题,即在满足消费者对环保的关切与保持产品性能进步之间找到平衡。GfK,作为全球知名的市场研究机构,通过其全球战略...

    C++性能优化英文版

    ### C++性能优化知识点解析 ...对于任何希望在C++领域内深化自己技术能力的开发者来说,这本书都是一个不可或缺的学习资源。通过对本书的学习,读者不仅可以提升自己的编程技能,还能在实际项目中实现更高的性能目标。

    win7_pb_帮助补丁(解决每次打开PB弹出帮助问题).rar

    标题中的"win7_pb_帮助补丁(解决每次打开PB弹出帮助问题).rar"指出,这个压缩包文件是为Windows 7系统设计的一个补丁,主要目的是解决PowerBuilder(简称PB)应用程序在运行时频繁弹出帮助窗口的问题。PowerBuilder...

    QAPM-一款强大且细腻的APP性能专项解决方案.docx

    ### QAPM:一款强大且细腻的APP性能专项解决方案 #### 概述 QAPM作为一项技术方案,旨在提供一套全面的APP性能优化及管理工具。...对于寻求提升移动应用性能的企业和个人开发者而言,QAPM无疑是一个值得信赖的选择。

    性能测试工具Loadrunner11的汉化包1

    6. **问题解决**:如果在使用过程中遇到任何问题,如界面错乱、功能失效等,首先检查是否按照正确的步骤安装,其次查看汉化包是否完整,最后可以寻求社区支持或者联系汉化包的开发者寻求帮助。 7. **持续更新**:...

    用于Microsoft Azure的混合云性能监测可在5分钟内开始端到端监测!

    然而,随着系统的复杂性增加,如何有效监测和管理混合云的性能成为了一个挑战。本文将详细介绍如何利用Dynatrace软件,为Microsoft Azure提供端到端的混合云性能监测解决方案,使企业能够快速开始全面监控云环境。 ...

    阿里+Java+开发手册、阿里巴巴Java性能调优实战

    另一方面,《阿里巴巴Java性能调优实战》华山版专注于深入探讨Java应用的性能优化。本书不仅讲解了性能优化的理论知识,还提供了大量的实战案例和分析,帮助开发者快速定位性能瓶颈并给出有效的优化策略。在JVM内存...

    php网站性能分析利器工具,比java的jmeter还好用,还是图形化GUI界面.zip

    在IT行业中,优化网站性能是至关重要的,尤其是对于PHP开发者来说。本文将深入探讨一种被赞誉为“php网站性能分析利器工具”的应用,它甚至...对于那些寻求提高PHP网站性能的开发者而言,这是一个不容忽视的强大组合。

    react-BaseTable是一个react表格组件能够以高性能和灵活性的显示大型数据集

    **React-BaseTable组件详解** React-BaseTable是一款专为React开发者设计的高性能、高度可定制的表格组件,尤其适用...对于那些寻求提升表格组件性能和用户体验的开发者来说,BaseTable无疑是一个值得考虑的解决方案。

    SuperMap三维性能提问单

    由于三维渲染对计算资源的需求较大,性能问题常见,因此提出了一个系统性的提问单用于自助化解决性能瓶颈。以下是针对标题和描述中提到的知识点进行详细说明。 1. SuperMap三维项目性能问题的自我诊断与优化方法。...

    SQL2005 VS SQL2000的性能

    ### SQL Server 2005 与 SQL Server 2000 的性能比较 #### 一、概述 随着技术的进步,Microsoft 对其旗舰级数据库管理...对于那些正在寻求提高数据库性能的企业来说,迁移到 SQL Server 2005 是一个值得考虑的选择。

    比较几个流行的JavaScript框架的性能

    Vue.js是一个轻量级且易于学习的框架,它的性能得益于其类似的虚拟DOM机制和简单的API。Vue还支持单文件组件,使代码组织更加清晰。VuePress则是在Vue基础上构建的静态站点生成器,用于编写文档,它结合了Vue的动态...

    iis性能计数器错误

    - **"本文档为IIS性能计数器错误时的操作步骤,内容简洁明了"**:这表明文档的主要内容是提供一系列简单易懂的步骤来帮助用户解决IIS性能计数器出现错误的问题。 #### 标签解析 - **"计数器"**:进一步强调文档的...

    常见Web性能瓶颈及分析

    据统计,一个站点可能包含从1种到115种不等的字体资源,平均为4种。然而,大多数站点并未对这些字体资源进行有效的压缩处理。 **现状分析** - **压缩比例低**: 只有9.6%的站点字体资源经过了压缩处理,而对于第三方...

    LoadRunner性能测试工具

    这款工具的显著特点是它能够模拟大量真实的用户行为,对整个企业系统进行全面的性能测试,从而帮助测试人员快速定位并解决问题。 在LoadRunner的工作机制中,它首先通过创建虚拟用户来模拟实际用户的行为。这些虚拟...

    C#管理系统源代码!!!

    1. **网站测试文档.doc**:这可能是一个详细的测试报告,包含了对管理系统功能、性能、兼容性等方面的测试步骤和结果,有助于理解系统的实际运行情况和可能存在的问题。 2. **网站帮助文档**:这份文档可能提供了...

Global site tag (gtag.js) - Google Analytics