未来已来

发布新日志

  • LoadRunner中的开源软件以及第三方软件

    2011-10-07 18:34:56

    开源和第三方的软件许可协议:

    开源:

    1.putty:PuTTY是跨平台 Telnet/SSH 客户端,同时在 Win32 Unix 系统下模拟xterm 终端

    官方下载地址(PuTTY Download Page:

    http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

     

    2.lcc Retargetable C Compiler

    LCC,全称为"Local C Compiler""Little C Compiler",是一个小型自由的ANSI C编译器,源代码开放,由Chris FraserDavid Hanson设计开发。

    lcc编译器的源代码可在 ftp.cs.princeton.edu (128.112.152.13) 服务器的pub/lcc目录下免费获得。关于lcc设计和实现最权威的书籍当属两位开发者合著的的经典<<A Retargetable C Compiler: Design and Implementation>> ,中文译本叫《可变目标C编译器——设计与实现》.

    lcc ANSI C编译器,是标准C编译器,仅仅支持标准规定的语法,所以规模很小。而gcc则是标准C的超集,它不仅能编译标准C而且做了很多扩展,因此gcc的代码量是非常惊人的,GCC早在1999年就由原来的GNU C COMPILERGNU C编译器) 进化为GNU COMPILER COLLECTIONGNU 编译器家族),能编译C,C++,Pascal,Fortran,Ada,Object C等等,而且是目前支持平台最多的编译器,可以说只要稍微有点用途的平台都有相应的gcc版本,gcc产生的代码也是非常高效的,因为它的优化器相当出色。目前gcc最新版本是4.3.2,仅仅是C部分的代码量就有将近150万行!

     

    3.GNU C Pre Processor

     

    4.UtilityLibrary

     

    This product includes software from UtilityLibrary by Alex Kucherenko

    (http://www.codeproject.com/cs/miscctrl/ak_wizard.asp)

     

    5.DockPanel Suite

    一个非常棒的仿VS2005UI库——DockPanel Suite,它是一款开源的.Net Windows Forms开发环境下的停靠控件( docking)类库。它模仿Visual Studio .Net的效果开发的。

    This product includes software from DockPanel Suite by Weifen Luo

    (http://sourceforge.net/projects/dockpanelsuite/)

     

    6.SNMP++ shared library

    7.PCRE

    PCRE,全称是Perl Compatible Regular ExpressionsPCRE是一个Perl库,包含了perl兼容的正规表达式库。PCRE是免费开源的库,它是由C语言实现的.

    这里是它的官方主页:http://www.pcre.org/,感兴趣的朋友可以在这里了解更多的内容。

    要得到PCRE库,可以从这里下载:http://sourceforge.net/projects/pcre/files/

     

    8.Microsoft SQL Server Redistributable

    9.Berkeley DB

    Berkeley DB是由美国Sleepycat Software公司开发的一套开放源码的嵌入式数据库的程序库(database library),它为应用程序提供可伸缩的、高性能的、有事务保护功能的数据管理服务。Berkeley DB为数据的存取和管理提供了一组简洁的函数调用API接。

    Berkeley DB是由美国Sleepycat Software公司开发的一套开放源码的嵌入式数据库的程序库(database library),它为应用程序提供可伸缩的、高性能的、有事务保护功能的数据管理服务。Berkeley DB为数据的存取和管理提供了一组简洁的函数调用API

    Berkeley DB为多种编程语言提供了API接口,其中包括CC++JavaPerlTclPythonPHP,所有的数据库操作都在程序库内部发生。多个进程,或者同一进程的多个线程可同时使用数据库,有如各自单独使用,底层的服务如加锁、事务日志、共享缓冲区管理、内存管理等等都由程序库透明地执行。

    10.Host Resolution Functions

    11.SMSC Relay SDK

    smsc(Short Message Service Center)短消息服务中心

    SMSC Relay SDK Copyright . 2003-2006 TOPS (www.tops.com.pl)

     

    12.Xerces-C

    Xerces是一个开放源代码的XML语法分析器。

    Xerces-C++的前身是 IBM XML4C项目。XML4C XML4J 是两个并列的项目,而 XML4J Xerces-J——Java 实现——的前身。IBM将这两个项目的源代码让与 Apache 软件基金会(Apache Software Foundation),他们将其分别改名为 Xerces-C++ Xerces-J。注:“Xerces-C”和“Xerces-C++”是同一个东西。

     

    第三方:

    HP acknowledges the use of the following third-party components.

    ActivePerl by ActiveState

    BCGControlBar by BCGSoft

    BugTrapper Agent by MuTek

    Crystal reports by Business Objects

    Dundas Chart for ASP.NET Professional by Dundas

    Dundas Chart for Windows Forms Professional by Dundas

    DynaZIP by innerMedia

    Infragistics for Win Client by Infragistics

    Infragistics NetAdvantage for Win Client by Infragistics

    IPP by Intel

    MQTester by MetaStorm

    SDL Suite Epina

    SlickEdit by SlickEdit

    TeeChart by Steema

    Xtra Tree List by DevExpress

    XtraGrid by DevExpress

    XUpload by Persist Software

    yFIles.NET library by YWORK

    Microsoft ..NET Framework 2.0

    Microsoft .NET Framework 3.5

    Microsoft ASP.NET 2.0 AJAXExtensions

    Microsoft Core XML Services (MSXML) 6.0

    Microsoft Data Access Components (MDAC)

    Microsoft Enterprise Library Caching Application Block

    Microsoft Report Viewer Redistributable 2005

    Microsoft SQL Server 2000 Desktop Engine (MSDE 2000)

    Microsoft SQL Server 2005 Express

    Microsoft Visual Basic Virtual Machine

    Microsoft Visual C++ 2005 Redistributable Package

    Microsoft Visual C++ 2008 Redistributable Package

    Microsoft Web Services Enhancements (WSE) 2.0 SP 3

    Microsoft Web Services Enhancements (WSE) 3.0

    Microsoft Windows Installer 3.1 Redistributable

     

  • LoadRunner的学习资源

    2010-10-05 19:54:41

    从网络上转贴,觉得对初学者学习很方便

    Read First

    What is Load Testing (10 Pages)
    C:\Program Files\HP\LoadRunner\help\Learn_More_Testing.pdf

    HP LoadRunner Quick Start (30 Pages)
    C:\Program Files\HP\LoadRunner\tutorial\LR_QuickStart.pdf

    Tutorial (150 Pages)
    C:\Program Files\HP\LoadRunner\tutorial\Tutorial.pdf

    User Guides

    Virtual User Generator (1420 Pages)
    C:\Program Files\HP\LoadRunner\help\vugen.pdf

    Controller (552 Pages)
    C:\Program Files\HP\LoadRunner\help\Cntrl_pc.pdf

    Analysis (676 Pages)
    C:\Program Files\HP\LoadRunner\help\analysis.pdf

    Online Monitoring Reference (402 Pages)
    C:\Program Files\HP\LoadRunner\help\online.pdf

    Additional Reading

    Installation Guide (80 Pages)
    C:\Program Files\HP\LoadRunner\help\install.pdf

    Monitoring Best Practices (248 Pages)
    C:\Program Files\HP\LoadRunner\help\Monitoring_BP.pdf

    Flex Protocol Enhancements (12 Pages)
    C:\Program Files\HP\LoadRunner\dat\Flex.pdf

    Thats 3580 Pages of information on LR – How many pages have you gone through? (I probably did less than 1500)

    The above can also be found in Compiled Help Files. A couple like the Automation and Function reference are not found in the PDFs above, so it makes sense to list out the locations of these.

    CHM Files

    Everything from the above PDF listing
    C:\Program Files\HP\LoadRunner\bin\online.chm

    Function Reference
    C:\Program Files\HP\LoadRunner\bin\FuncRef.chm

    C Language function ref
    C:\Program Files\HP\LoadRunner\bin\c_language_FuncRef.chm

    Automation Reference (dont even go there)
    C:\Program Files\HP\LoadRunner\bin\automation.chm

    Well thats with the Documentation on your PC.

    ————————————————————-

    Now for the online stuff. Remember, many of your queries can be solved by using the search functionality at any of the following sites. Make it a habit to devote time every week to go through the latest posts, and it will make quite a good difference in your learning path.

    Email Lists:
    http://tech.groups.yahoo.com/group/loadrunner/
    http://groups.google.com/group/LR-LoadRunner
    http://tech.groups.yahoo.com/group/Advanced-LoadRunner/ (very little activity there – only for experienced users)

    Discussion Boards:
    http://www.sqaforums.com/postlist.php?Cat=0&Board=UBB6 (ofcourse!)
    http://forums13.itrc.hp.com/service/forums/categoryhome.do?categoryId=915 (HP Perf Center Forum)
    http://www.bish.co.uk/forum/index.php?board=2.0 (Richard Bishop)

    White Papers / Presentations:
    HP LoadRunner tips and tricks
    https://h10078.www1.hp.com/bto/download/loadrunner-configuration.pdf
    Performance Center New Features:
    http://hpbroadband.com/(S(vlbj3h3h2ej4qane0gsonc55))/program.aspx?key=5831MtEPC7May2009
    LR Compiler
    http://www.loadtester.com/under-hood-loadrunner-compiler

    Blogs:
    Official HP Blog: http://www.communities.hp.com/online/blogs/loadrunner/default.aspx
    Scott Moore, Tim Chase et al http://www.loadtester.com/blog
    Alexander Podelko http://www.testingreflections.com/blog/67
    Stuart Moncrieff http://www.myloadtest.com/ & http://www.jds.net.au/tag/loadrunner/
    Dmitry Motevich http://motevich.blogspot.com/ (includes video tutorials)
    papayamilkshake/Hwee Seong Tan http://www.loadrunnertnt.com/tag/loadrunner/
    Kim Sandell http://ptfrontline.wordpress.com/category/loadrunner/
    Richard Bishop http://www.bish.co.uk/index.php?option=com_content&view=category&id=34:recent&Itemid=1

    Wilson Mar: (deserves a seperate heading of his own – not a blog – but additional reading)
    LoadRunner Architecture http://www.wilsonmar.com/1loadrun.htm
    VUScripting http://www.wilsonmar.com/1lrscript.htm
    VTS http://www.wilsonmar.com/1mercvts.htm
    AJAX RIA web app load testing using LoadRunner http://www.wilsonmar.com/ajax_rec.htm
    Results Explorer http://www.wilsonmar.com/lrexplore.htm

    Twitter Feeds
    Coming Soon

    Protocol & Application Specific Resources

    AJAX c & s
    http://www.wilsonmar.com/ajax_rec.htm

    Flex, AMF
    http://hpbroadband.com/(S(3uelw04503pkjo55saxzlofd))/program.aspx?key=5831LoadRunner24March10

    CITRIX
    CITRIX document (for LR7.51)
    http://www.ccaheaven.com/wps/Mercury%20Interactive’s%20LoadRunner%20for%20Citrix.pdf
    Tim Chase CITRIX Scripting Best Practices
    http://www.loadtester.com/whitepapers/Citrix_LoadRunner.pdf
    Scott Moore’s CITRIX Scripting Tips
    http://www.loadtester.com/citrix-tips-2007-part-1

    Remedy ARS
    From JDS http://www.jds.net.au/tech-tips/vugen-scripting-for-remedy/

    Misc stuff
    LoadRunner VuGen to JMeter conversion
    http://www.performanceengineer.com/blog/lr2jm-convert-loadrunner-scripts-to-jmeter/
    Various Links : http://loadtester.tumblr.com/

    Certification Information:
    http://h20546.www2.hp.com/main/americas/certification/?sitepick=PT (General Info)
    http://www.hp.com/partnerlearning/learner_id.html (HP Learner ID)
    https://ibt1.prometric.com/index.asp?ibt=9710657000& (Prometric Id)

  • LoadRunner Analysis 中response time为负

    2010-09-18 12:51:30

           精确的时间计时,有时候是非常必要的。在测试代码的性能时,也需要使用到非常精确的时间计时。还有测试硬件的性能时,也需要精确的时间计时。这时就需要使用QueryPerformanceCounter来查询定时器的计数值,如果硬件里有定时器,它就会启动这个定时器,并且不断获取定时器的值,这样的定时器精度,就跟硬件时钟的晶振一样精确

     

    Option Explicit

          Declare Function QueryPerformanceCounter Lib "Kernel32" _
                                     (X As Currency) As Boolean
          Declare Function QueryPerformanceFrequency Lib "Kernel32" _
                                     (X As Currency) As Boolean
          Declare Function GetTickCount Lib "Kernel32" () As Long
          Declare Function timeGetTime Lib "winmm.dll" () As Long

          Sub Test_Timers()
          Dim Ctr1 As Currency, Ctr2 As Currency, Freq As Currency
          Dim Count1 As Long, Count2 As Long, Loops As Long
          '
          ' Time QueryPerformanceCounter
          '
            If QueryPerformanceCounter(Ctr1) Then
              QueryPerformanceCounter Ctr2
              Debug.Print "Start Value: "; Format$(Ctr1, "0.0000")
              Debug.Print "End Value: "; Format$(Ctr2, "0.0000")
              QueryPerformanceFrequency Freq
              Debug.Print "QueryPerformanceCounter minimum resolution: 1/" & _
                          Freq * 10000; " sec"
              Debug.Print "API Overhead: "; (Ctr2 - Ctr1) / Freq; "seconds"
            Else
              Debug.Print "High-resolution counter not supported."
            End If
          '
          ' Time GetTickCount
          '
            Debug.Print
            Loops = 0
            Count1 = GetTickCount()
            Do
              Count2 = GetTickCount()
              Loops = Loops + 1
            Loop Until Count1 <> Count2
            Debug.Print "GetTickCount minimum resolution: "; _
                        (Count2 - Count1); "ms"
            Debug.Print "Took"; Loops; "loops"
          '
          ' Time timeGetTime
          '
            Debug.Print
            Loops = 0
            Count1 = timeGetTime()
            Do
              Count2 = timeGetTime()
              Loops = Loops + 1
            Loop Until Count1 <> Count2
            Debug.Print "timeGetTime minimum resolution: "; _
                        (Count2 - Count1); "ms"
            Debug.Print "Took"; Loops; "loops"
          End Sub
      

  • SQL Server 性能调整原则

    2009-03-18 22:25:53

    调整SQL Server 时,请遵循以下原则:

    ·让 SQL Server完成大部分的调整工作。

    Microsoft SQL Server可以创建一个自动配置及自动调整的数据库服务器。充分利用SQL Server提供的自动调整设置功能。这些设置帮助SQL Server 保持以最佳性能运行,甚至在用户装入内容不断变化或者查询内容不断变化的情况下也能保持。

    ·RAM 是有限的资源。

    对RAM高速缓存的管理是数据库服务器环境的一个整体特征。从RAM 高速缓存中存取数据比从磁盘中存取数据的速度要快得多,但是RAM是一种有限的资源。如果数据页与索引页对数据I/O的要求可以降低到最低限度,那么这些页也就可以在RAM中保存的时间更长一些。过多的不必要的数据信息和索引信息涌入高速缓存会把有用页过快地挤出去。调整性能的重点就是减少I/O,以使高速缓存的利用率达到最高。

    ·挑选好的索引。

    为所有数据库查询保持最小I/O的一个关键性措施是:保证建立和维护适当的索引。

    ·评价磁盘 I/O 子系统性能。

    物理磁盘子系统必须提供一个带有足够I/O处理功能的数据库服务器,可以在不做磁盘查询操作的情况下直接运行它。过多的磁盘查询操作会导致性能的降低。这篇文档描述了如何检测以及如何解决磁盘I/O的问题。

    ·调整应用程序和查询程序

    当数据库服务器处理由特定应用程序指定的、来自成百上千个连接点的服务请求时,调整应用程序和查询程序变得非常重要。因为在典型情况下,是应用程序确定运行于数据库服务器上的SQL查询,所以应用程序开发者必须懂得SQL服务器的基本框架,以及如何充分利用SQL Server索引来使I/O最小化。

    ·充分利用SQL Server剖视器(Profiler)及索引调整向导(Index Tuning Wizard)

    SQL Server 剖视器(Profiler)可以用来监测SQL Server 的工作量,并为其做日志文件,然后可以将其递交给索引调整向导(Index Tuning Wizard) ,为实现更好的性能而对索引重新进行调整。经常使用SQL Server 剖视器和索引调整向导可以帮助你优化索引,使SQL Server在查询工作改变的情况下仍能以较好的性能工作。

    ·利用SQL Server 性能监视器(Performance Monitor)。

    SQL Server 7.0提供了一套修改过的性能监视器对象和计数器,它们可以用来为监视和分析SQL Server操作提供有用的信息。这篇文档描述了性能监控器中一些重要的计数器。

    ·利用图形化显示方案(Graphical Showplan)和SQL Server查询分析器(Query Analyzer)

      SQL Server  查询分析器引入了图形化显示方案,帮助分析在Transact-SQL 查询时出现的问题。SQL Server 查询分析器还包含STATISTICS IO ,这是调整查询功能的另一个重要的工具选项。

     

  • web_set_user 使用

    2008-12-13 21:28:00

    性能测试过程中Web_Set_User的使用


    今天带着学员做测试过程中(网站是学员独立动手搭建),在访问某个页面时,系统会弹出一个对话框要求用户输入域用户名称和口令,输入正确的与用户名称和口令才能继续。用LR录制脚本回放不能成功,造成这个原因是由于IIS的设置问题,IIS具有身份验证功能,提供了几种验证方式:

    1、 匿名访问
    这种方式不验证访问用户的身份,客户端不需要提供任何身份验证的凭据,服务端把这样的访问作为匿名的访问,并把这样的访问用户都映射到一个服务端的账户,一般为IUSER_MACHINE这个用户,可以修改映射到的用户:

    2、 集成windows身份验证
    这种验证方式里面也分为两种情况
        A.NTLM验证: 这种验证方式需要把用户的用户名和密码传送到服务端,服务端验证用户名和密码是否和服务器的此用户的密码一致。用户名用明码传送,但是密码经过处理后派生出一个8字节的key加密质询码后传送。
        B.Kerberos验证:这种验证方式只把客户端访问IIS的验证票发送到IIS服务器,IIS收到这个票据就能确定客户端的身份,不需要传送用户的密码。需要kerberos验证的用户一定是域用户。
          每一个登录用户在登录被验证后都会被域中的验证服务器生成一个票据授权票(TGT)作为这个用户访问其他服务所要验证票的凭证(这是为了实现一次登录就能访问域中所有需要验证的资源的所谓单点登录SSO功能),而访问IIS服务器的验证票是通过此用户的票据授权票(TGT)向IIS获取的。之后此客户访问此IIS都使用这个验证票。同样访问其他需要验证的服务也是凭这个TGT获取该服务的验证票。

     

    解决问题的方法:解决方法是"启用匿名访问",有两种解决方法
    1,删掉网站。重新再添加。到匿名访问那步,不要把它的勾去掉
    2.IIS里右键点你网站目录"属性"---"目录安全性"---"编辑"----"启用匿名访问"打勾
     弄完如果不要用户密码,但又提示你没有权根 请看下面操作
     IIS里右键点你网站目录"属性"---"主目录"--"配置"---"选项"--“启用父路径"打勾 确定
     接下来最好再做一步
     IIS里右键点你网站目录“权根",这里先确保你有iis来宾用户,没有的话请点"添加"--"高级"--“立即查找"--按三下I键就是这个用户了-确定就行了
     接下来同步权根,让你网站目录里每个文件和文件夹都有和网站根目录一样的权根
     IIS里右键点你网站目录“权根"--点"高级"---把下面两个勾都打上--确定--等它同步完

     

    在使用LR的时候,回放服务器报401 Access Denied错误,
    当WEB服务器不允许匿名访问,而我们又没有提供正确的用户名/密码时,服务器就会给出这个返回代码。在IIS中,设置IIS的安全属性为不允许匿名访问,此时直接访问的话就会得到以下返回结果:

    HTTP/1.1 401 Access Denied
    Server: Microsoft-IIS/5.1
    Date: Mon, 06 Mar 2006 09:15:55 GMT
    WWW-Authenticate: Negotiate
    WWW-Authenticate: NTLM
    Connection: close
    Content-Length: 3964
    Content-Type: text/html
     
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
    <html dir=ltr>
    ……
    此时跳出对话框,让我们输入用户名和密码,当我们在输入了用户名和密码以后,服务器与客户端会再进行两次对话。首先客户端向服务器索取一个公钥,服务器端会返回一个公钥,二者都用BASE64编码,相应的消息如下(编码部分已经做了处理):
    GET / HTTP/1.1
    Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
    Accept-Language: zh-cn
    Accept-Encoding: gzip, deflate
    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)
    Host: 192.168.0.55:8080
    Connection: Keep-Alive
    Authorization: Negotiate ABCDEFG……
     
    HTTP/1.1 401 Access Denied
    Server: Microsoft-IIS/5.1
    Date: Mon, 06 Mar 2006 09:20:53 GMT
    WWW-Authenticate: Negotiate HIJKLMN……
    Content-Length: 3715
    Content-Type: text/html
     
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
    <html dir=ltr>
    ……
    客户端拿到公钥之后使用公钥对用户名和密码进行加密码,然后把加密以后的结果重新发给服务器:
    GET / HTTP/1.1
    Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
    Accept-Language: zh-cn
    Accept-Encoding: gzip, deflate
    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)
    Host: 192.168.0.55:8080
    Connection: Keep-Alive
    Authorization: Negotiate OPQRST……
    这样,如果验证通过,服务器端就会把请求的内容发送过来了,也就是说禁止匿名访问的网站会经过三次请求才可以看到页面。但因为客户端浏览器已经缓存了公钥,用同一个浏览器窗口再次请求这个网站上的其它页面时就可以直接发送验证信息,从而一次交互就可以完成了。

    脚本代码如下:


    #include "web_api.h"


    Action()
    {
      int i=0;
      int iLink_Counts=0;
      int iRnd_link=0;
      char buffer[20]="";
      char url[20]=""; 

      web_set_user("192.168.1.111\\administrator", "123456", "192.168.1.111:80");

      web_reg_save_param("Save_Links",
                          "LB=<a href=\"",
           "RB=\"",
                          "ORD=All",
                          LAST); 

     web_url("192.168.1.84",
      "URL=http://192.168.1.111/",
      "Resource=0",
      "RecContentType=text/html",
      "Referer=",
      "Snapshot=t3.inf",
      "Mode=HTML",
      LAST);
      

        //获得参数文件数组大小
        lr_output_message("数组大小:%d",atoi(lr_eval_string("{Save_Links_count}")));
        iLink_Counts=atoi(lr_eval_string("{Save_Links_count}"));

        for(i=1;i<=iLink_Counts;i=i+1)
        {
            sprintf(buffer,"{Save_Links_%d}",i);
            lr_output_message("%s",lr_eval_string(buffer)) ;  
         }   

       srand(time(NULL));

       iRnd_link=rand() % iLink_Counts +1;

       sprintf(buffer,"{Save_Links_%d}",iRnd_link);

      // url="URL="+ lr_eval_string(buffer"); 

       strcpy(url,"URL=");
       strcat(url,lr_eval_string(buffer));


       web_url(lr_eval_string(buffer),
      url,
      "Resource=0",
      "RecContentType=text/html",
      "Referer=",
      "Snapshot=t3.inf",
      "Mode=HTML",
      LAST);

     return 0;
    }

  • 性能测试链接收集(zt)

    2008-12-13 19:49:21

    Capacity Planning

    CMG conference proceedings from 1997 through 2005 a unique collection of papers about capacity planning, performance engineering, and performance management

    Dr. Neil Gunther's Site and Blog

    Guerrilla Capacity Planning by Neil J. Gunther

    Performance management and capacity planning CMG papers written by BMC Software and pre-acquisition BGS employees

    Dr. Bernie Domanski's papers and presentations

    Dr. Norton's publications include papers on Simalytic Modeling as well as a number of other modeling related topics

    Capacity Planning and Performance Tuning Resources from Fortuitous

    Adrian Cockcroft's Blog performance, modeling, and capacity planning

    Capacity Planning for Internet Services. Quick planning techniques for high growth rates by Adrian Cockcroft and Bill Walker

    Open Source Capacity & Performance Management Tools for Windows & Unix Systems by Brian Johnson

    System Management by Exception by Igor Trubin

    Using Transaction Cost Analysis for Site Capacity Planning from Microsoft

    Capacity Model for Internet Transactions from Microsoft

    A Capacity Planning Framework for Multi-tier Enterprise Services with Real Workloads

    Capacity Planning for Internet Service Networks by Geoff Huston

    Capacity Planning: An Essential Tool for Managing Web Services by Virgílio A.F. Almeida and Daniel A. Menascé

    IBM Server and ERP Sizing Guides

    Capacity Planning Directory

    Quantitative System Performance the classic text by Lazowska, Zahorjan, Graham, and Sevcik

    Stochastic Petri Nets - An Introduction to the Theory book by Falko Bause and Pieter Kritzinger


    Tuning

    It is often difficult to separate information how to design systems with good performance (architecture, performance patterns, language structures, etc.) from information how to tune and deploy systems, quite often both sides are considered. Although more tuning- and product - oriented links are placed here, a lot of related information can be found in the Performance section. See also Bottlenecks.

    Wilson Mar's performance tuning notes mainly Windows and .Net
    Performance Methodology, Terminology and Concepts Tutorial from Intel
    Jaqui Lynch's Publications including UNIX, AIX, Linux, and Apache performance tuning
    Performance monitoring and capacity planning by Randy Johnson and Harris Kern, mostly DBMS-related tuning
    PerformanceWiki performance / tuning tips

    Windows
    Windows 2000 Performance Tuning Microsoft white paper
    Performance Tuning Guidelines for Windows Server 2003 Microsoft white paper
    Windows Server 2003 Performance and Scalability Microsoft white paper
    Windows System Resource Manager

    Linux/Unix
    Tuning IBM xSeries Servers for Performance IBM Redbook (Windows, Linux, NetWare, VMware)
    SarCheck Linux & UNIX performance analysis and performance tuning tool
    Solaris Internals and Performance FAQ
    AIX 5L Practical Performance Tools and Tuning Guide IBM Redbook
    Database Performance Tuning on AIX IBM Redbook
    Tuning Red Hat Enterprise Linux on IBM Eserver xSeries Servers IBM Redbook
    IBM System Planning Tool for POWER processor-based systems
    IBM System i and System p System Planning and Deployment: Simplifying Logical Partitioning IBM Redbook
    PowerVM Virtualization on IBM System p: Managing and Monitoring IBM Redbook
    AIX and Midrange Virtualization by Jaqui Lynch

    VMware
    VMware Technical Resources a lot of performance-related technical papers
    Performance Best Practices and Benchmarking Guidelines VMware Infrastructure 3 version 3.5 with ESX 3.5, ESXi 3.5, and VirtualCenter 2.5

    Virtualization
    V or Not to V: A Practical Guide to Virtualization paper and presentation by Gene Fernando

    Apache Web (aka IBM HTTP) Server
    Apache 1.3 Performance Notes
    Apache 2.0 Performance Tuning
    Apache Performance and Security Guide by Nasim Mansurov
    Tuning Apache Web Servers for Speed by Dean Gaudet

    Microsoft IIS
    The Art and Science of Web Server Tuning with Internet Information Services 5.0
    IIS 6.0 Performance Tuning

    WebLogic
    Workload Management in WebLogic Server 9.0 by Naresh Revanuru
    Avoiding Unnecessary JSP Recompilation by Nagesh Susarla
    WebLogic 9.2 Server Performance and Tuning manual
    WebLogic 9.1 Server Performance and Tuning manual
    WebLogic 9.0 Server Performance and Tuning manual
    WebLogic 8.1 Server Performance and Tuning manual
    WebLogic 7.0 Server Performance and Tuning manual

    WebSphere
    WebSphere Application Server V6: Scalability and Performance Handbook
    WebSphere 6.0 Tuning Performance from WebSphere documentation
    WebSphere 5.1 Performance Tuning and Monitoring (pdf) from WebSphere documentation
    Recommended reading list: J2EE and WebSphere Application Server from IBM Software Services, includes Performance and Monitoring
    WebSphere 5.0.2 Performance Tuning and Monitoring (pdf) from WebSphere documentation
    WebSphere V5.1 Performance, Scalability, and High Availability IBM Redbook
    DB2 UDB V8 and WebSphere V5 Performance Tuning and Operations Guide IBM Redbook
    Meet the experts: Stacy Joines and Gary Hunt on WebSphere performance
    Monitoring WebSphere Application Performance on z/OS

    MQ
    Performance: Getting the Most Out of WebSphereMQ

    Microsoft SQL Server
    SQL Server 2008, Monitoring and Performance from Microsoft MSDN
    SQL Server 2005, Database Engine Administrator InfoCenter from Microsoft MSDN
    SQL Server 2000, Optimizing Database Performance Overview from Microsoft MSDN
    SQL Server 2000, Monitoring Server Performance and Activity from Microsoft MSDN
    SQL Server Performance site about Microsoft SQL Server performance tuning and optimization
    Analyzing and Optimizing Performance SQL Server 2000 Analysis Services, from Microsoft MSDN
    SQL Nitro, network acceleration for SQL Server

    Oracle
    Oracle Database Performance Tuning Guide 11g Release 1 (11.1) manual from Oracle
    Oracle Database Performance Tuning Guide 10g Release 2 (10.2) manual from Oracle
    Oracle Database Performance Tuning Guide and Reference 9i Release 2 (9.2) manual from Oracle
    Oracle database performance problems and tuning by SearchOracle.com (free registration required)
    Oracle Statspack Survival Guide
    Automatic Workload Repository
    Learning Guide: Performance tuning by SearchOracle.com (free registration required)

    DB2
    DB2 UDB Practical Performance Tuning by John Maenpaa
    DB2 8.2 Administration Guide: Performance (pdf) from DB2 8 documentation
    DB2 7.2 Administration Guide: Performance (pdf) from DB2 7 documentation
    DB2 UDB V7.1 Performance Tuning Guide IBM Redbook
    DB2 Performance Expert for Multiplatforms V2 IBM Redbook
    DB2PORTAL.com DB2 resources for the mainframe
    DB2 UDB for z/OS Version 8 Performance Topics IBM Redbook
    DB2 9 for z/OS Performance Topics IBM Redbook
    DB2 UDB for z/OS: Design Guidelines for High Performance and Availability IBM Redbook
    DB2 for z/OS: DB2 Universal Database concurrency by Fred Whitlark
    A Deep Blue View of DB2 Performance: IBM Tivoli OMEGAMON XE for DB2 Performance Expert on z/OS IBM Redbook
    Local vs Remote Database Access: A Performance Test IBM Redpaper
    DB2 UDB V8 and WebSphere V5 Performance Tuning and Operations Guide IBM Redbook

    MySQL
    MySQL Server Performance Tuning by Jeremy Zawodny (free Linux Magazine registration required)
    MySQL 5.1 Reference Manual

    Oracle Applications
    Oracle Documentation for all products
    Oracle E-Business Suite Technology - Optimizing Performance blog

    Oracle EPM and BI
    Oracle EPM and BI Documentation
    Oracle EPM and BI White Papers


    Modeling Tools

    Each vendor site provide many interesting documents about modeling, capacity planning, performance management, etc.

    BMC Performance Assurance solutions (former BEST/1, Patrol Perform &Predict)

    TeamQuest
            How to Do Capacity Planning

    Metron Athene, "provides ITIL-compliant capacity management, automatic performance analysis and reporting for UNIX, Linux, Windows and Mainframe Servers."

    HyPerformix Predictive IT Management Suite includes HyPerformix Optimizer (uses discrete event simulation modeling technology), HyPerformix Capacity Manager and HyPerformix Data Manager.
        Integrated with LoadRunner.LoadRunner is one of data sources for Hyperformix. For some time Mercury promoted HyPerformix as Mercury Capacity Planning.
        Wilson Mar's notes

    OPNET IT Guru Systems Planner

    PDQ - open source from Dr. Neil Gunther

    Ptolemy II is a set of Java packages supporting heterogeneous, concurrent modeling and design from UC at Berkeley, free for academic and commercial use.

    Microsoft System Center Capacity Planner

    A Collection of Modelling and Simulation Resources on the Internet by Andrea Emilio Rizzoli


    Application Performance Management Tools

    A new class of software for performance monitoring and diagnostics in production or under load. Basic monitoring (using operating systems tools and utilities) are considered in the Monitoring section.

    Gartner Magic Quadrant for J2EE Application Server Management, 2005

    Oracle Enterprise Manager manages Oracle and non-Oracle technologies within a single console. Oracle Application Diagnostics for Java.

    HP Diagnostics (former Mercury) is integrated with both Performance and Business Availability Centers. Includes Mercury Diagnostics for J2EE (former LoadRunner Transaction Breakdown), .Net and ERP/CRM (Siebel, Oracle, and SAP NetWeaver) and Deep Diagnostics for J2EE (former Performant OptiBench).

    Wily Introscope gives the ability to quickly isolate and resolve performance issues in each stage of the application lifecycle. J2EE.

    Precise Software Application Performance Management (was also Symantec, Veritas) solutions to optimize the performance and availability of enterprise applications including J2EE, .NET, databases (DB2, Oracle, and SQL Server), and ERP/CRM (SAP, PeopleSoft, Siebel, and Oracle Applications).

    Quest Application Management (including former Sitraka products) optimizing performance and availability for J2EE, Oracle E-Business, PeopleSoft, SAP, Siebel.
    Quest Database Management  ensures database quality, performance, and availability for Oracle, DB2, SQL Server, MySQL, and Sybase.
    Quest White Papers

    IBM Tivoli Application Management, including products from acquired Cyanea and Candle
    Large-Scale Implementation of IBM Tivoli Composite Application Manager IBM Redpaper
    IBM Tivoli Composite Application Manager V6.0 Family: Installation, Configuration, and Basic Usage IBM Redbook

    IBM Enterprise Workload Manager Resources. An IBM attempt to extend the mainframe technology to other platforms.
    IBM Enterprise Workload Manager V2.1 IBM Redbook
    Hardening the EWLM Performance Data IBM Redpaper
    Performance monitoring with Enterprise Workload Manager. Enable ARM instrumentation for end-to-end performance monitoring in IBM middleware on AIX and Linux by CheKim Chhuor

    Compuware Vantage products, including Vantage Analyzer for J2EE
    Compuware Strobe application performance management for z/OS applications

    OPNET application performance solutions including Panorama (former Altaworks) "realtime application monitoring and analytics".

    QuickVision from ClearApp Production Monitoring & Diagnostics for WebLogic and WebSphere (former Acsera)

    Identify AppSight is positioned a little differently. "AppSight's patented Black Box technology monitors application execution and captures a synchronized record of user activity, configuration, and code execution in real time. Simply play back the Black Box log to quickly pinpoint the root cause of problems. That's any problem - performance, configuration, functional, or user errors - in Windows, .NET, and J2EE applications". Part of BMC Software.

    BEZ Systems BEZPlus Predictive Performance Management solutions for Oracle, DB2, and Teradata.

    Symphoniq TrueView "monitors Web application performance from browser to back-end to automatically detect and diagnose problems inside or outside the datacenter."

    Nimsoft (acquired Indicative) proactive service level, application performance and business service management

    dynaTrace performance diagnostics of Java/J2EE and .NET Applications, promises a deep look into the inner workings of applications under load

    Performance Management directory from KnowledgeStorm


    Enterprise Monitoring Tools

    Tools allowing monitoring of multiple servers including alerting and reporting. Basic monitoring (using operating systems tools and utilities) are considered in the Monitoring section.

    PerfMan from ISM, cross-platform from Windows to z/OS

    PerfCap Performance Management and Capacity Planning software, supported on IBM-AIX, HP-UX, SUN Solaris, Tru64 Unix, Linux, Windows NT/2000/XP and OpenVMS platforms

    WHAM monitoring and low-overhead profiling for AIX, Solaris, and Linux

    Performance SeNTry (also known as NTSMF) from Demand Technology, high-performance Windows performance monitor

    Sysload from Sysload Software, cross-platform including agents for databases and applications

    Meta-View Performance Manager from Lund, Windows and different flavors of UNIX

    Performance and Availability Management from NetIQ

    PROGNOSIS from Integrated Research (IR), "real-time, systems management software for high-availability computing environments"

    Performance Management from ASG (acquired Landmark)

    MonitorIT from Breakout Software, "Complete WINDOWS, SNMP, & SYSLOG Monitoring"

    Heroix multiplatform, automated monitoring and management software

    BMC ProactiveNet Analytics (former ProactiveNet) end-to-end performance monitoring and real-time analysis to identify performance issues

    List of Free Performance Monitoring Tools from MFJ Associates


    Transaction Tracking / Business Activity Monitoring

    Oracle Enterprise Manager Real User Experience Insight (former Moniforce UXInsight) monitors real user activity, provide analysis and notifications

    HP TransactionVision (former Bristol Technology) tracks customer transactions throughout their entire lifecycle. It provides Business Process Monitoring that increases visibility into your customer facing transactions.

    SeaView/RTM (Response Time Monitor) "passively captures network packets via a spanned port on the server switch. The software discovers and captures granular data describing all application sessions in real time. Built into the SeaView architecture is the ability to plug in application-specific modules that probe deeply into captured packets to measure the performance of actual business transactions."

    TeaLeaf "provides real-time, browser-level visibility into every customer's online experience."

    OpTier "delivers end-to-end visibility and control of all business transactions, across all tiers."

    Quest End User Management

    Coradiant End-User Experience Management

    Business Activity Monitoring with WebSphere Business Monitor V6.1 IBM Redbook

    Business Activity Monitoring (BAM) directory from KnowledgeStorm


    Performance-Related Technologies

    DataSynapse virtualizes applications across a real-time infrastructure

    Appistry Enterprise Application Fabric (Appistry EAF) "software-based environment for running large-scale, time-critical applications on commodity-grade computers, without sacrificing dependability or manageability"


    Network Performance Management

    NetPerformance.com "the first Web site dedicated to network performance management"

    Guide to Network Performance Management and Network Performance Management from TechTarget (free registration required)

    The End All of Network Performance Management by Bruce Boardman, six network performance management products tested (Argent Guardian 6.0a, Compuware Vantage 8, Concord eHealth Suite 5.0.2, NetScout nGenius Performance Manager 1.4, NetQoS SuperAgent 3.0, and ProactiveNet 4.1.2)

    Network Performance Directory

    List of Free Performance Monitoring Tools from MFJ Associates

    John Sellens's System and Network Monitoring Page

    NetQoS "Performance First Network Management"

  • LoadRunner 实现监控Tomcat

    2008-12-10 22:22:53

         

      LoadRunenr没有监控Tomcat的专用监控器,为了用lr达到监控tomcat的目的可以通过打开Tomcat自带的Status页面之后,利用lr的关联技术得到相关的数据,把数据输出到lr自定义的监控器中。

       1.打开Tomcat的status页面,方法为编辑Tomcat的conf目录下的tomcat-users.xml文件,在文件中添加
    <tomcat-users>
      <role rolename="manager"/>
      <user username="admin" password="pass" roles="manager"/>
    </tomcat-users>

      2.开发lr脚本

      lr_start_transaction("monitor tomcat");
      web_reg_save_param("JVMFreeMemory",
         "LB=Free memory: ",
         "RB= MB",
         "Ord=1",
       LAST);
       web_reg_save_param("JVMTotalMemory",
       "LB=Total memory: ",
       "RB= MB",
       "Ord=1",
       LAST);
     
        web_reg_save_param("JVMMaxMemory",
         "LB=Max memory: ",
         "RB= MB",
         "Ord=1",
        LAST);
     
        web_url("status",
            "URL=http://{ServerName}/manager/status",
            "Resource=0",
            "RecContentType=text/html",
            "Referer=",
            "Snapshot=t1.inf",
            "Mode=HTTP", 
        LAST);
     
       lr_end_transaction("monitor tomcat", LR_AUTO);
     
    // Tomcat JVM metrics
      lr_user_data_point("Tomcat JVM Free memory", atof(lr_eval_string("{JVMFreeMemory}")));
      lr_user_data_point("Tomcat JVM Total memory", atof(lr_eval_string("{JVMTotalMemory}")));
       lr_user_data_point("Tomcat JVM Max memory", atof(lr_eval_string("{JVMMaxMemory}")));

  • Apache 性能调优(编撰)

    2008-12-02 13:59:22

      Apache音译为阿帕奇,是北美印第安人的一个部落,叫阿帕奇族,在美国的西南部。相传阿帕奇是一个武士,他英勇善战,且战无不胜,被印第安人奉为勇敢和胜利的代表,因此后人便用他的名字为印第安部落命名,而阿帕奇族在印第安史上也以强悍著称。Apache是世界使用排名第一的Web服务器。它可以运行在几乎所有广泛使用的计算机平台上。

      在进行web性能容量规划的时候首先利用Apahce首先计算内存消耗:

      apache_max_process_with_good_perfermance < (total_hardware_memory / apache_memory_per_process ) * 2

      apache_max_process = apache_max_process_with_good_perfermance * 1.5

      为什么会有一个apache_max_process_with_good_perfermance和apache_max_process呢?原因是在低负载下系统可以使用更多的内存用于文件系统的缓存,从而进一步提高单个请求的响应速度。在高负载下,系统的单个请求响应速度会慢不少,而超过 apache_max_process,系统会因为开始使用硬盘做虚拟内存交换空间而导致系统效率急剧下降。此外,同样的服务:2G内存的机器的 apache_max_process一般只设置到1G内存的1.7倍,因为Apache本身会因为进程过多导致性能下降。

      例子1:

      一个apache + mod_php的服务器:一个apache进程一般需要4M内存

      因此在一个1G内存的机器上:apache_max_process_with_good_perfermance < (1g / 4m) * 2 = 500

      apache_max_process = 500 * 1.5 = 750

      所以规划你的应用让服务尽量跑在500个进程以下以保持比较高的效率,并设置Apache的软上限在800个。

      例子2:

      一个apache + mod_resin的服务器: 一个apache进程一般需要2M内存

      在一个2G内存的机器上:

      apache_max_process_with_good_perfermance < (2g / 2m ) * 2 = 2000

      apache_max_process = 2000 * 1.5 = 3000

      Apache所在的机器与操作系统环境是对性能影响最大因素,很明显,一以368的PC与一台P4或双处理器的机器不会有同样的性能。不过,如果不涉及硬件的改变,我们可以做的最大的事是首先看一下Apache是否运行在一台专用的服务器上,如果与其它应用共用一台服务器肯定会影响服务器的性能。

      在大多数情况下,告别是对静态网站而言,内存数量是一个影响性能的关键因素,因为它决定了Apache可以缓存多少内容。它缓存的内容越多,在硬盘上读取内容的机会就越少,而存取硬盘上的特定文件是一件很费时的操作。如果你的网站主要是一些静态内容,你最好使用mod_cache选项,如果你的内存足够大,可以使用mod_mem_cache选项。

      第一个选项将信息缓存在磁盘上,当它与mod_include选项一起使用时会有很好的效果,这个选项在建立一个页面时在缓存中保存它的最终版本。使用mod_mem_cache将缓存内容保存在一个可以被所有Apache进程共享的内存堆中。

      使用更快的磁盘或进一步使用RAID可以提高Apache对磁盘文件的访问速度。注意,如果你做了下面的所有这些优化,一个硬件的(而非软件)升级方案是更好的选择。最后一个谈到的关于硬件的问题是CPU能力,这对动态内容网站的影响很大,动态内容越多要求越高。

      以下是影响Apache的性能配置参数:

      Timeout  300

      指定站点响应的时间秒数。若超过这段时间仍未收到或送出数据,就断开连接。意思是该参数指定Apache在接收请求或发送所请求内容之前的最长等待时间(秒),若超过该时间Apache则放弃处理该请求,并释放连接。该参数默认值为120,推荐设置为60,对于访问量较大的网站可以设置为30。

      KeepAlive On|Off

      启用此项,表示允许保持持久连接,让每次连接能提出多个请求。避免每请求一个文件就跟服务器建立一次连接。也就是控制Apache是否允许在一个连接中有多个请求,默认打开。但对于大多数论坛类型站点来说,通常设置为off以关闭该支持。

      MaxKeepAliveRequests 100

      每次连接可提出请求的数量,设置为0表示数量不限,默认值为100。.

      KeepAliveTimeout 15

      连续两个请求之间的时间如果超过15秒还未到达,则视为连接中断。这种做法可以最大限度地利用有限的资源,这也是Apache性能如此优越的原因之一。

      MinSpareServers 5

      MaxSpareServers 20

      Apache在运行时会根据负载的轻重自动调整空闲子进程的数目。

      提供浏览服务的httpd进程的数目需要随连接数目的多少而变化,因此需要随时保持几个闲置的httpd进程等候新的连接请求。若闲置的进程数少于5个(默认值),则表示闲置进程太少,需要将其增加到5个;

      若多于20个(默认值)则表示闲置进程太多,需将其减少到20个。

      MaxClients 150

      同时接入的数目太多时会降低系统访问性能,设置此参数可限制同时连接的最大数值,默认值为150,它设定的就是Apache可以同时处理的请求,这是对Apache性能影响最大的参数

      MaxClients和MaxRequestPerchild;MaxClients指定Apache在同一时间内最多允许有多少客户端能够与其连接,如果超过MaxClients个连接,客户端将会得到一个“服务器繁忙”的错误页面。我们看到默认情况下MaxClients设置为15,这对一些中型站点和大型站点显然是远远不够的!也许您需要同时允许512个客户端连接才能满足应用需求,好吧,那么就让我们把MaxClients修改为512,保存httpd.conf并退出,重启Apache,很遗憾,在重启过程当中您看到了一些错误提示,Apache重启失败。错误提示中告诉您 MaxClients最大只能设定为256,相信您一定很失望。不过不要沮丧,Apache作为世界一流的Web Server一定不会如此单薄的!在默认情况下,MaxClients的确只能设定为不超过256的整数,但是,如果您有需要完全可以随意定制,此时就需要使用ServerLimit参数来配合使用,简单的说ServerLimit就像是水桶,而MaxClients就像是水,您可以通过更换更大的水桶(将ServerLimit设定为一个较大值)来容纳更多的水(MaxClients),但要注意,MaxClients的设定数值是不能大于 ServerLimit的设定数值的!下面让我们了解一下MaxRequestPerChild参数,该参数指定一个连接进程中可以有多少个线程同时工作。也许这样解释过于专业,那么您只要想想“网络蚂蚁”、“网际快车FlashGet”中的“多点同时下载”即可,该参数实际上就是限制最多可以用几个“点”。默认设置为0,即为:不限制。但需要注意,如果将该值设置的过小会引起访问问题,如果没有特殊需要或者访问量压力并非很大可以保持默认值,如果访问量很大则推荐设置为2048

      优化建议:

      # 升级 Apache 到最新版本,新版本往往包含性能提升和安全更新。

      # 在 httpd.conf 中设置 "HostNameLookups off" 能避免针对每个访问者的 DNS 域名的反向查询。

      # 对于繁忙的网站,在 httpd.conf 中设置 "MaxClients 230" 或者更高。这项设置让更多的 httpd 进程同时响应请求,并避免了处理器排队的情况发生。

      # 采用另外一台服务器处理图片文件。

      # 缺保您的 Web 页面和 CGI 页面采用了浏览器缓冲技术。具体的文章可以参考本站:采用 mod_gzip 加速 Zope 和 Apache

      # 保持您的 Apache 苗条,编译那些仅仅需要的模块,在编译之前,修改 src/Configuration 文件,在那些不需要的模块之前用 # 号注释掉。

      # 如果不需要流量日志,那么把 httpd.conf 中的 TransferLog 指向到 /dev/null/

      # 除非你确定使用 .htaccess 文件来控制一些目录的权限,否则设置 "AllowOverride None" ,这样就免去 Apache 在每个目录搜索 .htaccess 文件的劳役之苦。

      # 不要让不需要的后台进程运行。

      # 千万不要把页面或者日志文件写到网络磁盘上,例如 NFS。

      # 不要让 Apache (httpd) 运行于 inetd 模式。

      # 不要让 X Windows 运行在你的 Web 服务器上,用 Ctrl-Alt-Backspace 关闭 X 。

      # 避免使用 SSI tag。

      # 在 CGI 脚本中:

      * 文件 I/O:打开的文件数目越少越好。

      * Shell 命令:采用全路径来调用 shell 命令。

      * 如果你的网站主要以 CGI 来驱动,那么请使用 mod_perl。

      * 在你的 Web 页面目录中,不要让文件数超过 1000 个,文件越多花费在定位上的时间也越多。

      # 在 Web 服务器上的图片越少越好,保证每个图片都经由图片压缩器运行。

      # 对你的网站做压力测试,建议采用 Apache 自带的 ab 命令来测试。

      # 为了最好的性能,最好把网线拔掉,这样你的 Web 服务器就十分安全,而且负载马上降为 0,


  • lrscript for test Lotus project performance (zz)

    2008-11-24 12:00:38

  • 监控Window2003Server的计数器以及阀值

    2008-11-23 11:20:46

     

    Type

    Object\Counter

    Threshold

    Action

    Memory

    Memory\Available Bytes

    Less than 4MB

    Check for memory leaks and add RAM if necessary

    Memory

    Memory\Pages/ sec

    20

    Investigate paging settings

    Paging File

    Paging File\% Usage

    Above 70%

    The Paging File value should match up with the previous two values. A value exceeding 70% is not healthy for the system.

    Disk

    Physical Disk\ Free Space

    Logical Disk\

    Free Space

    15%

    Clear more disk space. Increase logical or physical disk space

    Disk

    Physical Disk\ Disk Time

    Logical Disk\ Disk Time

    90%

    The disk is not being read quickly enough. This could be a hardware issue. It could also be that the amount of data on disk is too large.

    Disk

    Physical Disk\Disk Reads/sec, Physical Disk\Disk Writes/sec

    Depends on Manufacturer

    The writing the reading from the disk is slow. We may need to upgrade the disk or disk drivers

    Processor

    Processor\ % Processor Time

    85%

    Find the process intensive processes and move them to separate processors (if you have a multi-processor machine) or add more processing power (by adding another processor or by upgrading to a faster processor)

    Processor

    Processor\ Interrupts/ sec

    Processor specific; 1000 is a standard

    If the counter value increases without additional processes, the cause could be hardware related

    Server

    Server\ Bytes Total/ sec

    Depends on the network

    If all your servers’ Bytes Total/ sec is the same and similar to the maximum network speed, you might need to increase the network bandwidth

    Server

    Server\ Pool Paged Peak

    Physical RAM available

    Should not be greater than the physical RAM value.

  • 破解LoadRunner:How to skip LoadRunner license manager(转)

    2008-11-06 13:55:04

    Necessary Tools

    WinDbg (Debugging Tools for Windows – Microsoft FREE utility to debug programs)

    IDA32 (Interactive Disassembler – to reverse binaries to asm source)

    Hiew32 (Hex editor – to change binaries)

    Assembler language knowledge J

    Short brief

    I’ll skip all my wrong attempts to find real initialization/license checking code block (it took almost two days to get to the right program point to start thinking on) and as usual, its was mostly done by intuition.

    After reversing lm70.dll, I get very good source file with excellent function names and some links to interesting string variables, like “Init”, “CheckRWAccess”, etc. After investigation of such string variables, I found a function which makes “current operation” logs with status flag indications, so it was a real debug output (mb developers forgot to remove). The function makes output depending on “debug switch” on/off, so set to “true” to get operations results output in file ("C:\Documents and Settings\<user>\Local Settings\Temp\lm60trc.txt”). The most interesting is – all functions return only error codes (“0” all fine or “<> 0” on error)! Going thru “CheckRWAccess” the functions, I noticed some code sequence which fills some memory block with non-logic data, but before procedure ends, that non-logic block was decoded into different license database files names (cfgamp.dlls). After that I’ve changed my PC timer for 20 days forward. When investigating “Init” function results, I set results to “0”, but LoadRunner tells me “you have last day to evaluate program”. Nice… It was due to cfgamp the license database being encoded with sub-status – “you have one day left”. Finally, determined complete solution with no time restrictions and no message boxes.

    Done with LRLauncher, but when executing LRController – it hangs on user amount – another procedure another check, so previous lookup method don`t help much.  After that I restored Temporary license to get closer look at LRController work. On user amount > 25 it shows license warning message box – excellent, lets start from MessageBoxA function. By setting breakpoint on MessageBox I get program point, where this message box called and un-winded execution until found where is condition checked “licensed max amount <= current_user_num”. It was single procedure called from lm70!Test function. After I set that procedure to return “0 (all fine)” it works with 100 users w/o problems.

     

    Note: to get more detailed brief you need to install at least IDA32 or WinDbg.

  • 发现并解决SqlServer性能问题的通用方法

    2008-11-04 17:18:42

     

    Step 1: CPU usage
    首先要通过通过了解CPU使用率来诊断SQL Server性能,
    通常是方法有两种:
    第一:你可以使用远程桌面的察看任务管理器中CPU的使用率
    第二:监控以下计数器
    Processor: % Privileged Time
    Processor: % Processor Time
    Processor: % User Time
    System: Context Switches/sec
    System: Processor Queue Length

    Step 2: Disk IO
    监控性能计算器:
    Physical Disk: % Disk Read Time
    Physical Disk: % Disk Write Time
    Physical Disk: % Idle Time
    Physical Disk: Avg Disk Bytes/Read
    Physical Disk: Avg Disk Bytes/Transfer
    Physical Disk: Avg Disk Bytes/Write
    Physical Disk: Avg Disk Queue Length
    Physical Disk: Current Disk Queue Length

    Step 3: Memory
    内存指标:
    Memory: Available Bytes
    Memory: Pages/sec
    Process: Working Set
    SQL Server: Buffer Manager: Buffer Cache Hit Ratio
    SQL Server: Buffer Manager: Total Pages
    SQL Server: Memory Manager: Total Server Memory (KB)
    SQLServer:Cache Manager - Cache Hit Ratio - _Total
    SQLServer:Cache Manager - Cache Pages - _Total
    Memory: Page Reads/sec
    Memory: Page Writes/sec
    Memory: Page Input/sec
    Memory: Page Output/sec
    Paging File: % Usage


    Step 4: Network
    网络监控:
    Network Interface: Bytes Received/sec
    Network Interface: Bytes Sent/sec
    Network Interface: Bytes Total/sec
    Network Interface: Current Bandwidth
    Network Interface: Output Queue Length

    Step 5: Transaction-level performance
    通过SQL事件探查捕捉事务运行情况。
    Sp_monitor :快照的SQL Server统计
    Sp_who :SQL Server进程快照
    Master.dbo.sysprocesses :存储SQL Server进程有关的信息的系统表
    DBCC OPENTRAN
    DBCC INPUTBUFFER

  • 性能测试提到的网站并发用户公式

    2008-10-10 20:40:32

     

    Request Per Second + Simultaneous Browser connections + Thinking Time = Concurrent User 


    Concurrent User  表示网站并发用户数

    Request Per Second [RPS] 表示每秒请求数(吞吐量)

    Simultaneous Browser connections [SBC] 表示并发连接数

    Thinking Time  表示平均用户思考时间
  • IIS 站点流量监控方法

    2008-10-04 00:39:01

    1、开始→控制面板-〉管理工具→性能
    2、系统监控器,点工具添加
    2、性能对象,选择 Web Service
    4、“从列表中选择计数器”,选择 Bytes Total/sec ,即每秒字节数。
    5、“从列表中选择实例”,选择要查看的站点,可以按Ctrl键多选,也可以点上面的“所有实例”。
    6、点击“添加”按钮,点击“关闭”按钮。

     

    备注:Web Service:Bytes Total/sec   显示Web服务器发送和接受的总字节数。低数值表明该IIS正在以较低的速度进行数据传输

  • 一个特别的假期

    2008-10-01 23:27:23

     

         假期按道理应该好好休息下,但是老婆公司有个项目启动做性能测试,老婆是一个对工作很负责任的人,由于时间比较紧张,老婆在家加班28日到今天都在开发脚本,性能测试不是简单的利用lr录制回放,需要根据业务流程开发符合用户使用习惯的脚本,老婆每天开发脚本要做到夜里12点多,前一段时间还是我教,现在已经开始独立做了。

        

    附:老婆总结: 

        这里把老婆把工程文件夹建立如下结构:

         Proj_Name
                 -LR_scrīpts
                 -Scenarios
                 -TestDocs
                     -TestPlanAndReport
                     -TestExecution
                     -Recommendations
                 -Reports
                     -LR_Reports
                           -Cycle1
                           -Cycle2
                     -HTML_Reports
                           -Cycle1

         脚本中需要提交时间

         Action()
        {
                 //code

                 lr_save_datetime("Today is  %Y/%m/%d", DATE_NOW, "Today");
                 lr_output_message(lr_eval_string("{Today}"));

                 //code

                 return 0;
         }

        
      

       

  • LoadRunner MySql 自定义监控器开发

    2008-10-01 20:05:34

     

        来深圳3个多月,每天工作都很紧张,好不容易等到十一放假,正好把以前答应朋友和学员提出的问题解答下。记得上次有人问过如何监控MySql,我提供了一种SiteScope和Lr整合的办法,最近在网络上搜索下发现我那篇文章blog网上有很多转载,那么另外一种监控mysql的方法怎么处理呢?

        首先确认mysql需要监控的性能指标,然后确认如何采集这些性能数据。这里我以采集hits值为例子,第一步利用vc开发dll,然后在lr中开发监控器,这里我不是写教程,所以很多细节就不罗嗦了(以下脚本代码在winxp sp2 vc 6.0 lr9.1中调试)

       vc 6.0 dll中的代码:

    // mysql_dll.cpp : Defines the entry point for the DLL application.
    //

    #include "stdafx.h"
    #include "stdlib.h"

    MYSQL *conn=NULL;
    MYSQL_RES *p_res_ptr=NULL;
    MYSQL_ROW sqlrows;


    BOOL APIENTRY DllMain( HANDLE hModule,
                           DWORD  ul_reason_for_call,
                           LPVOID lpReserved
          )
    {
        return TRUE;
    }

    extern "C" int _declspec(dllexport) init_mysql_connection(char *str_server,char *str_username,char *str_pwd,char *str_Table)
    {
     conn=mysql_init(NULL);

        if(!conn)
     {
      printf("\nFailed to initate MySQL connection");
      return 1;
      exit(0);
     }
        else
     {
      printf("\nSuccess to initate MySQL connection");
      if (!mysql_real_connect(conn,str_server,str_username,str_pwd,str_Table,0,NULL,0))
      {
       printf( "Failed to connect to MySQL: Error: %s\n", mysql_error(conn));
      }
      else
      {
       printf("\nLogged on to %s sucessfully",str_server);
       return 0;
      }
      return 0;
     }
    }

    extern "C" int _declspec(dllexport) close_mysql_connection()
    {
     if(conn=NULL)
     {
      printf("\nConnection is Null");
      return 1;
      exit(0);
     }
     else
     {
         mysql_free_result(p_res_ptr);
      printf("\nClose connection");
      mysql_close(conn);   
      return 0;
     }
    }

    //"show status like \'qcache%\'"

    extern "C" int _declspec(dllexport) get_mysql_table_query(char *str_query)
    {
     int res=0;
     res=mysql_query(conn,str_query);
     if(res)
     {
      printf("Failed to mysql query: Error: %s\n", mysql_error(conn));
      return 1;
     }
     else
     {
      printf("\nSucess in Mysql Query");
      return 0;

     }

    }

     

    extern "C" int _declspec(dllexport) get_mysql_query_data(char *str_query,char *str_data)
    {
        unsigned long u1_numrow=0;
        unsigned int i_index = 0;
     p_res_ptr=mysql_use_result(conn);

     if(p_res_ptr){
     
      while((sqlrows=mysql_fetch_row(p_res_ptr))){
      
       if(*sqlrows[0]=*str_query)
       {
        strcpy(str_data,sqlrows[1]);
       
        
       }
      }
     }

     return NULL;

    }

     

    lr 9.1中代码:

    Action()
    {

            int i=0; 
            double x;
            char *str_data;
     
     
            str_data=(char *)malloc(20*sizeof(char));
            lr_load_dll("D:\\vc\\mysql_dll\\Debug\\mysql_dll.dll"); 
            i= init_mysql_connection("localhost","root","123456","mysql");
            lr_output_message("%d",i);
        
           for(;;)
           {
                get_mysql_query_data("Qcache_hits",str_data);
                i=get_mysql_table_query("show status like \'qcache%\'");
                lr_output_message("%d",i);
                x = atof(str_data);
                lr_user_data_point("hits",x);
                lr_think_time(5);
           }
            lr_output_message("%d",x);
         close_mysql_connection();
     return 0;
    }
     
       
  • 读取LoadRunner Analysis信息

    2008-09-25 13:11:14

    Dim Conn

    Dim Rst

    set Conn=CreateObject("Adodb.Connection")
    Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=xxxx\analysis.mdb"
    Set Rst=CreateObject("Adodb.RecordSet")

    Rst.Open "Select * from Result",Conn

    Do while not Rst.EOF:
      scenario  = Rst.Fields("Scenario Name").Value
      name      = Rst.Fields("Result Name").Value
      tz        = Rst.Fields("Time Zone").Value / 3600
      startTime = Rst.Fields("Start Time").Value
      endTime   = Rst.Fields("Result End Time").Value
      Rst.MoveNext

    Loop


    Wscrīpt.Echo " "
    Wscrīpt.Echo "  Scenario: %s " % scenario
    Wscrīpt.Echo "    Run ID: %s " % name
    Wscrīpt.Echo "        TZ: %s " % tz
    Wscrīpt.Echo "Start Time: %s " % time.asctime(time.localtime(startTime))
    Wscrīpt.Echo "  End Time: %s " % time.asctime(time.localtime(endTime))

  • LoadRunner 试题 你能打多少分 题目第一部分

    2008-09-18 21:54:46

    22.  Standard monitors do not require any separate licenses. Select the three standard monitors available in LoadRunner. Choose THREE. (3 points)

     

       Apache

       Netscape

       IIS

       Oracle

       Unix

       SNMP

       Windows Resources

     

    21.  Which of the following measurements are monitored by LoadRunners Web server monitors?

     

       Throughput

       CPU usage

       Cache hits

       Page faults

     

    20.  A LoadRunner ______________________ measures the performance of the server by measuring the time it takes for the server to respond to specified Vuser requests. (1 point)

     

       Checkpoint

       Thinktime

       Transaction

       Server monitor

     

    19.  For which of the following requirements would you select a Goal-Oriented Scenario? Choose TWO. (2 points)

     

       Be able to change the number of Vusers during the load test.

       Run the load test with the objective of validating response time.

       The Controller schedules and runs Vusers on its own.

       The load test expert has the ability to control how many Vusers run.

     

    18.  A scenario can contain several sets of Vusers to represent different user profiles and emulate real users interacting with the application. These sets of Vusers are called the ______________________________. (1 point)

     

       Vuser group

       Test set

       Scenario set

       Test run group

     

    17.  Which of the following statements is TRUE for the web_submit_form statement? (1 point)

     

       Playback minimizes hardware resource demands because parts of an HTTP request are cached.

       Action tag and values are not hard-coded; they are retrieved from memory.

       You can easily use WDiff to compare captured dynamic values to debug the scrīpt.

     

    16.  You can add Vuser scrīpts and load generators from: (1 point)

     

       The Controller

       The Remote Agent

       The Virtual User Generator

       Analysis

       The Tuning Console

     

    15.  Complete the statement:

    To validate that the hardware to be used for the test environment is sufficient to meet the performance tests, a ____________________ is performed using a small number of business processes and users. (1 point)

     

     

       production run

       benchmark run

       aggregation run

       run for tuning

     

    12.  The Controller is installed on which platform? (1 point)

     

       UNIX

       Windows

       Apache

       JBoss

     

    11.  While setting up the test environment, you are running into problems connecting a load generator to the Controller which indicates the status of the agent as Down. What are THREE ways to check the connection between the Controller and the load generator? (3 points)

     

       Ping the load generator.

       Run the command line: Kill -9.

       Confirm agentservice is active and listed.

       Uninstall and re-install the load generator.

       Check firewall access.

       Turn the service agent to process.

     

     

    8.  One of your customers requirements is that their web site can handle 25,000 users at any time, logged in and performing different transactions. Part of your information gathering is to determine concurrency. What level of concurrency represents the customers requirement? (1 point)

     

       Application

       Business

       Transaction

     

    7.  Which of the following statements reflect best practice on managing the test environment? (1 point)

     

       A test environment is a subfolder under the production environment.

       A test environment is rebooted during test runs without affecting the production environment.

       A test environment uses live data from the production environment.

       A test environment is a controlled environment that should not mirror the production environment.

     

     

    6.  What information about a web site under test is important to collect if you are planning to consider network latency and packet loss in your load test? (1 point)

     

       Task distribution diagram C

       Peak load

       Transactional concurrency

       Customer geography

     

    5.  What type of information will you need to gather to determine how business processes affect different components in the system architecture? This is especially useful during the load test; it can help isolate the source of bottlenecks. (1 point)

     

       Task Distribution Diagram

       System Monitoring

       Transcontinental Remote Users

       Business Process Mapping

     

    2.  Select the three criteria by which you will identify the business processes (BPs) to use for a performance test. (3 points)

     

       Passed unit testing

       Mission-critical BPs

       Uses unique data

       Returns dynamic data

       Heavy throughput

       Include all BPs

       Affects legacy systems

     

    1.  Which of the following statements is considered best practice for setting up the test environment? (1 point)

     

       The test environment uses the production database but not the production system.

       The test environment selects functional components of the application under test.

       The test environment undergoes benchmark testing.

       The test environment can be a folder within the production environment.

  • LoadRunner 试题 你能打多少分 题目第二部分

    2008-09-18 21:49:36

    49.  What conclusion can you draw for File Data Operations? (1 point)

     

       Processor queue and file data operations correlate and show that the system is backlogged.

       Rising CPU and file data operations indicate the system is backlogged.

       Processor queue and file data operations are in contrast and the system is not backlogged.

       Rising CPU and file data operations correlate to show the system is well tuned for I/O operations.

    48.  To determine if the network had issues with increasing traffic (or number of Vusers) during the load test, what merging graphs will you use to make this determination? Choose Two. (2 points)

     

       Running Vusers with Transaction Response Time

       Running Vusers with Hits per Second

       Running Vusers with Throughput

       Running Vusers with Transaction Peformance Summary

     

    47.  What do the readings for processor queue length indicate? (1 point)

     

       Processor queue length is average; the system is processing on acceptable levels.

       Processor queue length is above normal and indicates system congestion.

       Processor queue length is below normal and indicates too little hardware is utilized by the system.

     

    46.  What was the average CPU utilization (in percentage)? (2 points)

     

    Note: Your answer should be in whole integers only. Decimals are not allowed.        

     

    45.  If you want to show the correlated values (for automatic correlations) only for the current step in your scrīpt, what feature will you use? 

     

       Scan scrīpt for correlations

       Show Differences In

       Show only differences that appear in scrīpt

       Show Scan for correlations popup after replay

     

    44.  Which utility do you use to identify dynamic values in a recorded scrīpt by comparing two scrīpts of similar recorded steps and data for correlation? 

     

       Automatic correlation

       Correlation by recording

       Compare with Vuser

       Scan

     

    43.  Which of the following functions adds a checkpoint in your scrīpt? Choose TWO. (2 points)

     

       web_reg_find ( );

       web_reg_save_param ( );

       web_reg_add_cookie ( );

       win_get_text ( );

       obj_get_text ( );

     

    42.  What is the correct syntax to initialize a variable in VuGen?

     

       int var1,

       int var1;

       int var1=2;

       int var1==2;

     

    40.  If the load test objectives were to evaluate transaction response times and monitor server resources, which types of monitors would best meet these objectives? Choose TWO. (2 points)

     

       Running Vusers

       Transaction Response Time

       Total Trans/Sec

       Hits per Second

       Throughput

       Windows Resources

       Apache

     

    39.  What setting will you use so that all Vusers are initialized before starting the scenario? (1 point)

     

       Reset

       Run/Stop Vusers

       Initialize Vusers before run

       Load all Vusers simultaneously

     

    38.  An application has an actual peak load value of 150 users. If you are creating an Overload scenario that comprises 120% of the actual peak load value, how many Vusers will you run? (3 points)          

     

    37.  Which feature allows you to configure the ramp up, ramp down, and duration options during a load test? (1 point)

     

       Schedule builder

       Design tab

       Edit Schedule

       Run tab

     

    36.  What setting will you configure to add the machines whose resources you want to monitor?

     

       Under Tools > Options

       Under Add Measurements…

       Under Freeze

       Under Configure…

     

    35.  Thinktimes are included in the Vuser scrīpt you are debugging. Since this is not yet a load test, you want to reduce the thinktime values to only a portion of the original recorded values. Which thinktime settings can you use to meet this requirement? Choose TWO. (2 points)

     

       As recorded

       Multiply thinktime by

       Use random percentage of recorded thinktime

       Limit thinktime to x number of seconds (where x is 1)

     

     

    34.  Dynamic data that you may need to correlate can best be investigated using which logging feature? (1 point)

     

       Send messages only when an error occurs

       Standard log

       Parameter substitution

       Data returned by the server

       Advanced trace

     

    33.  One of the requirements for a Vuser scrīpt is to include dynamic values in the execution log. What LoadRunner feature will you use to include dynamic values in the execution log without modifying the scrīpt? (1 point)

     

       lr_output_message

       Extended log

       Web_reg_find

       Advanced log

     

    32.  Match the scenario type with the action being described. (4 points) 选ABCD

     

      This scenario run shows the responsiveness of a site under low stress and helps you validate business process functions for concurrent usage with data being used in the test. ()

    This scenario applies the entire load through slow ramp up. The scenario is repeated until any bottlenecks found are investigated and corrected for optimum system performance. ()

    This scenario allows you to see the final limits of the system and helps determine a safety factor for your system.()

    ABCD This scenario is run to help you isolate the slowest transactions and helps you identify any system bottlenecks on major problem areas. ()

     A. Debug

    B. TopTime

    C. Full Load

    D. Scalability

     

    30.  What setting would you configure to view the execution log that includes parameter substitution, data returned by the server, and advanced trace? (1 point)

     

       Send messages only on error

       Advanced automatic log

       Standard log

       Extended log

     

    29.  To control the time between iterations in a Vuser, you will need to configure which run-time feature? 

     

       Run Logic

       Pacing

       Think Time

       Network Speed

     

    28.  Which TWO statements represent best practice when selecting monitor measurements during an initial load test? (2 points)

     

       Add specific monitors to allow backend experts to confirm their diagnosis of the system under test.

       Add default monitors to get a broad spectrum of how the system is behaving under load.

       Add specific monitors to help you target suspected problems in specific servers or components.

       Add default monitors to help you isolate potential bottlenecks during the load test.

     

    27.  Which Run-Time Setting ensures that when a scrīpt is played back, there is caching in the browser, and each iteration simulates a new user? (1 point)

     

       Additional attributes

       Browser emulation

       Miscellaneous

       Preferences

       Advanced options

     

     

    26.  What setting do you use to meet the requirement that the recording option for the scrīpt type be set to A scrīpt describing user actions. (1 point)

     

       URL-based scrīpt

       URL advanced

       HTML-based scrīpt

       HTML advanced

     

    25.  You want a Vuser scrīpt to capture a screenshot in case an error occurs during playback. Which setting will you configure to capture these errors? (1 point)

     

       Continue on error

       Fail open transactions on lr_error_message

       Generate snapshot on error

       Save snapshot resources locally

     

    24.  Which of the following statements follows the rendezvous definition policy? (1 point)

     

       Transaction times and rendezvous can be referenced at the same time.

       Fifty percent of users arrive between eight and nine in the morning.

       A rendezvous presents a separation of points in a business process.

     

    23.  You modified your Vuser scrīpts run time settings before running a new scenario. What feature in the Controller will you use to reflect the new run-time settings in the Controller? (1 point)

     

       Refresh

       Update

       Renew

       Reset

     

  • LoadRunner 性能监控器系列 - SiteScope SAP CCMS

    2008-09-07 21:12:40

    Introduction

     

    The SAP CCMS (Computer Center Management System) monitor displays statistics about the resource usage of all servers, components, and resources in any SAP R/3 landscape during the scenario run. You can also use the SAP CCMS monitor for SAP Portal and SAP GUI environments, but the amount of measurements provided by the SAP CCMS monitor is much greater.

     

     

    Requirements

     

    1.      SAP monitor license

     

    2.      LoadRunner 7.8 or above. 

    For LoadRunner 7.8, apply Feature Pack 1:

    1. On a machine with LoadRunner 7.8, go to Start à Programs à LoadRunner à  UpdateService.
    2. Click on the "Show Update" button.
    3. Obtain and install "LoadRunner update."

     

    3.      SiteScope installation

    ·        For LoadRunner 7.8 and below:

     LoadRunner 7.8 and below supports SiteScope Lite  version only. The SiteScope Lite installation file (SiteScopeSetupForLR.exe) and SiteScope Lite license are available in the Patches Database à LoadRunner à 7.6 à Performance Monitor à LR76P6 - LoadRunner 7.6 SiteScope Siebel and SAP Portal Add-in for LoadRunner.

     

    ·        For LoadRunner 8.0:

    LoadRunner 8.0 supports SiteScope 7.9.5. You need to install a patch on the Sitescope machine and the LoadRunner Controller machine. These patches are available in Patches Database à LoadRunner à 8.0  à Performance Monitors à LR80P77 - LoadRunner 8.0 Monitoring Support for SiteScope 7.9.5

     

    4.      On the machine installed with SiteScope, install the SAP Java Connector (SAP JCo 2.0.6 and above)

     

    .

     

    SiteScope installation and Setup

     

    Overview

     

    Ensure you have LoadRunner 7.8 or above installed.  Ideally, you will want an extra machine for the SiteScope installation:

     

    • First machine          à   Controller
    • Second machine     à   SiteScope
    • Third machine         à   Load Generator
    • Fourth machine       à   Load Generator

     

    Etc.

     

    In this situation, SiteScope will be gathering information from the servers and displaying them via a Web interface.  The Controller will then connect to the SiteScope installation and retrieve this data during the scenario run.

     

     

     

    Preparing the environment

     

    Prior to installing SiteScope, install the SAP Java Connector (SAP JCo 2.0.6 and above). To install the SAP Java Connector, perform the following:

     

    • Download the SAP Java Connector from the SAP Software Distribution Center at http://www.service.sap.com/connectors. Click ‘SAP Java Connector’ and ‘Tools and Services’. You will need a valid Service Marketplace login to access this site.

     

    • Follow the installation instructions that come with the SAP JCo download for your appropriate platform. On Windows, add the JCo installation location in the System Environment PATH variable. This change usually requires you to reboot Windows for the system PATH to be updated. Once completed, make the SAP JCo library file available to SiteScope by copying sapjco.jar (which comes with the Jco install) to /SiteScope/java/lib/ext before starting SiteScope.

     

     

    Install SiteScope

     

    1.      Obtain the SiteScope installation file. (Requirement)

     

    2.      On the machine where you wish to install SiteScope, run the installation file. 

     

    3.      In the “Administrator E-mail Address” window, enter an E-mail if you want a designated person to receive alerts, reports, and status messages. Otherwise, click <Next> to proceed to the next window.

     

     

    4.      Follow all the defaults settings to complete the SiteScope installation.

     

    5.      When the installation of SiteScope is completed, a browser will automatically open with instructions on how to start SiteScope.  Basically, the way to start SiteScope is via a browser with the URL http://<machine-name>:8888/SiteScope.

     

    As you can guess, SiteScope installs its own Web server as an interface to the application.

     

     

    Install SiteScope license

     

    Note: If you do not have the license, please contact you regional sales.

     

    1.      The first time you start SiteScope, you will get a “SiteScope First Time Setup” page. Click on “Skip this Page” to go to main SiteScope site.

     

    2.      Once the Auto Configuration completes, you will be brought to the main SiteScope page. 

     

    3.      Click on the “Preferences” link from the main SiteScope panel.

    a.       Enter the license in the “License Number” edit field.

    b.      Enter the additional license in the “Option licenses” edit field.

    Note: The SAP CCMS Server monitor will not be available without an Option license.

     

    4.      Click on the “Save Changes” button.

     

     

    SiteScope Monitor Configuration

     

    How to add an SAP CCMS Monitor Group

     

    1.   On the SiteScope main page, click on “Create Groups.”

     

    2.   Enter a name for the group (e.g., SAP CCMS).

     

    3.   Click on the “Add” button.

     

     

    How to add a SAP CCMS Monitor

     

    1.   From the main SiteScope page, go to the “SAP CCMS” group.

    (How to add an SAP CCMS Monitor Group)

     

    2.   In the “Add to Group” section, click on “Monitor” and select “SAP CCMS Server” from the list of monitors.

    Note: If you do not see “SAP CCMS Server” in the list, contact your local sales representative for the SAP CCMS add-in license.

     

    3.   Click on “Choose Server,” and fill in the following:

    Field name

    Information

    Application Server

    Enter the address of the SAP server you want to monitor.

    SAP Client

    Enter the Client to use for connecting to SAP. A default client of 800 is typically used.

    System Number

    Enter the System number for the SAP server. A default system number of 00 is typically used.

    Authorization User Name

    Enter the Username required to connect to the SAP server. This user must have authorization to access CCMS metrics.

    Authorization Password

    Enter the Password required to connect to the SAP server.

    SAP Router String (Optional)

    If your connection is being made through a router, enter a router address string. You can find the router address using the SAP Logon tool from the SAP Client software. Open the Logon console, select the server you want to monitor and then select Properties to view the router address. Leave it blank otherwise.

     

    4.      Click on the “Browse counters” button.

     

    5.      SiteScope will navigate to a page with all the available counters. Select the counters you want to monitor, and click on “Choose Counters.”

     

    Note: This tree will more or less match the hierarchy of Monitoring Tree Elements displayed in the Monitoring Tree that is shown in the SAP GUI with transaction RZ20. However, the browse tree may show more or less information than RZ20 depending on the authorization level of the username you specified for this monitor.  Check or clear the check boxes on the choose counters screen to select counters to monitor on this server.

     

    6.      SiteScope will navigate to the “Add SAP CCMS Server Monitor in Group” page with the counters selected in step 5 listed.

    a.       Verify the counters.

    b.       Change the update time to 15 seconds, and click on “Add monitor.”

    Setting up a SiteScope SAP CCMS Monitor in the Controller

     

     

    1.      In the Controller, look for the SAP CCMS monitor in the ERP/CRM Server Resource Section.

     

    2.      Display the graph by dragging it to the right.  Right-click in the graph and select “Add Measurement(s).”  You should now see the SiteScope Dialog box.

     

    3.      Click on the first “Add” button.  For the machine name, type in the IP address or the machine name of the system on which SiteScope is installed.  Click <OK>.

     

    4.      Click on the second “Add” button.  You should now see a SiteScope Monitor Configuration window.  In the left pane, you should see a tree with the monitors you have added into the SiteScope application.  Highlight the available monitors and choose the counters in the right pane.  Click <OK> to get out of the menus.

     

    You have now set up the new SiteScope SAP CCMS monitor.
361/212>
Open Toolbar