总是很难忘记生活的点点滴滴, 脑海中总是闪过好多的曾经, 美好的回忆, 但成长中却让我们失去了很多, 很想在忙碌的生活中淡淡忘记; 不曾放低的东西却始终让我忘记不了, 但我还要在忙碌的生活中继续生活!

发布新日志

  • web性能测试需要监控IIS的哪些性能指标?(转自51testin)

    2009-02-23 14:46:04

    IIS Global Active Flushed Entries Active Flushed Entries 是缓存文件句柄,当前传输全部完成后将关闭此句柄。IIS Global 对象。
    Web Anonymous Users/Sec 用户通过 Web 服务进行的匿名连接数。
    IIS Global BLOB Cache Flushes 自服务器启动后的 BLOB 缓存刷新数。
    IIS Global BLOB Cache Hits BLOB 缓存中的成功查找总数。
    IIS Global BLOB Cache Hits % BLOB 缓存命中数占全部缓存请求的比率。
    IIS Global BLOB Cache Misses BLOB 缓存中的未成功查找总数。
    Web、FTP Bytes Received/Sec 服务在应用层接收数据字节的速率,不包括协议头和控制字节。
    Web、FTP Bytes Sent/Sec 服务发送数据字节的速率。
    Web、FTP Bytes Total/Sec 由 Web 服务传输的每秒总字节数(发送字节数/秒与接收字节数/秒的总和)。
    Web CGI Requests/Sec 每秒由 Web 服务同时处理的 CGI 请求数。
    Web Connection Attempts/Sec 每秒用 Web 服务进行的尝试连接次数。此数是所有网站的平均值,而不考虑为“实例”所做的选择。
    Web Copy Requests/Sec 每秒使用 COPY 方法进行的 HTTP 请求数。Copy 请求用于复制文件和目录。可以统算,也可以分网站计算。
    Web、FTP Current Anonymous Users 当前使用 Web 或 FTP 服务建立匿名连接的用户数。如果客户端请求匿名连接被拒绝,但客户端用有效的身份验证数据来响应,则此连接将被视为非匿名连接。
    IIS Global Current BLOBs Cached 当前在缓存中用于 WWW 和 FPT 服务的 BLOB 信息块数。
    IIS Global、Web Current Blocked Async I/O Requests 当前由于带宽限制设置而暂时被阻止的请求数。被阻止的请求存放在缓冲区中,如果在达到超时限制之前,有了更多带宽,将解除阻止。
    Web Current CAL Count for Authenticated Users Web 服务当前同时用于已验证的连接的许可证数。可以统算,也可以分网站计算。
    Web Current CAL Count for SSL connections Web 服务当前同时用于 SSL 连接的许可证数。可以统算,也可以分网站计算。
    Web Current CGI Requests 当前由服务同时处理的 CGI 请求数。
    Web、FTP Current Connections 当前使用 Web 或 FTP 服务建立的连接数(匿名用户数与非匿名用户数之和)。此数是所有网站或 FTP 站点的总数,而不考虑为“实例”所做的选择。
    IIS Global Current File Cache Memory Usage 当前用于文件缓存的字节数。
    IIS Global Current Files Cached 其内容位于缓存中的、用于 WWW 和 FTP 服务的当前文件数。
    Web Current ISAPI Extension Requests 当前由服务同时处理的 ISAPI 扩充请求数。
    Web、FTP Current NonAnonymous Users 当前使用 Web 或 FTP 服务建立非匿名连接的用户数。如果客户端请求匿名连接被拒绝,但客户端用有效的身份验证数据来响应,则此连接将被视为非匿名连接。
    IIS Global Current URIs Cached 当前缓存中用于 WWW 和 FTP 服务的 URI 信息块数。
    ASP Debugging Requests 调试文档请求数。
    Web Delete Requests/Sec 每秒使用 Delete 方法进行的 HTTP 请求数。
    ASP Errors During Script. Runtime 由于运行时错误而导致的请求失败次数。
    ASP Errors From ASP Preprocessor 由于预处理器错误而导致的请求失败次数。
    ASP Errors From Script. Compiler 由于脚本编译错误而导致请求失败的总次数。
    ASP Errors/Sec 每秒错误数。
    IIS Global File Cache Flushes 自服务器启动后的文件缓存刷新数。
    IIS Global File Cache Hits 文件缓存中的成功查找总数。
    IIS Global File Cache Hits % 文件缓存命中数占全部缓存请求的比率。
    IIS Global File Cache Misses 文件缓存中的未成功查找总数。
    Web Files Received/Sec 自 Web 服务启动后由此服务接收(上载到 Web 服务)文件的速率。
    Web Files Sent/Sec 自 Web 服务启动后由此服务发送(从 Web 服务下载)文件的速率。
    Web Files/Sec 自 Web 服务启动后由服务器传输文件的速率。
    FTP FTP Service Uptime 服务或实例已经运行的秒数。当服务器或实例停止后,此值回到零。暂停不会影响此计数器。在 Web 服务中,此计数器称为 Service Uptime。
    Web Get Requests/Sec 使用 GET 方法进行的 HTTP 请求的速率。虽然 GET 请求可以用于表单,但它们通常用于基本文件检索或图形映射。
    Web Head Requests/Sec 使用 HEAD 方法进行的 HTTP 请求的速率。HEAD 请求通常表明客户端正在查询现有文档的状态,查看此文档是否需要刷新。
    ASP In Memory Cache Hit Rate 在缓存中的 ASP 模板中找到的请求的百分比。
    ASP In Memory Templates 缓存中的 ASP 模板总数。
    Web ISAPI Extension Requests/Sec 每秒由 Web 服务同时处理的 ISAPI 扩展请求数。
    Web Lock Requests/Sec 每秒使用 LOCK 方法锁定的 HTTP 请求数。Lock 请求用于将文件锁定于一个用户,使得只有此用户可以修改文件。
    Web Locked Errors/Sec 由于所需文档被锁定,每秒使服务器无法满足请求而导致的错误数。通常以 HTTP 423 错误代码形式报告给客户端。
    Web Logon Attempts/Sec 每秒用 Web 服务尝试登录数。可以统算,也可以分网站计算。
    Web、FTP Maximum Anonymous Users 使用 Web 或 FTP 服务(自服务启动后)建立当前匿名连接的最大用户数。
    WebMaximum CAL Count for Authenticated Users Maximum CAL Count forAuthenticated Users 是 Web 服务同时用于已验证的连接的最大许可证数。可以统算,也可以分网站计算。
    Web Maximum CAL Count for SSL connections Maximum CAL count for SSL connections 是 Web 服务同时用于 SSL 连接的最大许可证数。可以统算,也可以分网站计算。
    Web Maximum CGI Requests 自 Web 服务启动后由此服务同时处理的最大 CGI 请求数。
    Web、FTP Maximum Connections 自 Web 或 FTP 服务启动后,由此服务建立的最大并发连接数。此数是当前所有网站或 FTP 站点的最大数,而不考虑为“举例”所做的选择。
    IIS Global Maximum File Cache Memory Usage 用于文件缓存的最大字节数。
    Web Maximum ISAPI Extension Requests 自服务启动后,由此服务同时处理的最大 ISAPI 扩展请求数。
    Web、FTP Maximum NonAnonymous Users 使用 Web 或 FTP 服务(自服务启动之后)建立当前非匿名连接的最大用户数。如果客户端请求匿名连接被拒绝,但客户端用有效的身份验证数据来响应,则此连接将被视为非匿名连接。
    IIS Global、Web Measured Async I/O Bandwidth usage 由 Web 服务器接收和发送的字节数,一分钟内的平均值。这是服务器上用户通信总数的衡量标准。
    Memory Allocated 当前由 Active Server Pages 分配的内存总数(以字节为单位)。
    Web Mkcol Requests/Sec 每秒使用 MKCOL 方法进行的 HTTP 请求数。Mkcol 请求用于在服务器上创建目录。可以统算,也可以分网站计算。
    Web Move Requests/Sec 每秒使用 MOVE 方法得到的 HTTP 请求数。Move 请求用于移动文件和目录。
    Web NonAnonymous Users/Sec 每秒用户使用 Web 服务进行的匿名连接数。可以统算,也可以分网站计算。
    Web Not Found Errors/Sec 由于未找到所请求的文档,服务器无法满足请求而导致错误的速率。通常以 HTTP 错误代码 404 报告给客户端。
    Web Options Requests/Sec 每秒使用 OPTIONS 方法进行的 HTTP 请求数。可以统算,也可以分网站计算。
    Web Other Request Methods/Sec 每秒不使用 GET、POST、PUT、Delete、TRACE 或 HEAD 方法所进行的 HTTP 请求数。可以包括 LINK 或受网关应用程序支持的其他方法。
    Web Post Requests/Sec 每秒使用 POST 方法的 HTTP 请求数;通常用于表单或网关请求。
    Web Propfind Requests/Sec 每秒使用 PROFIND 方法进行的 HTTP 请求数。Propfind 请求检索文件和目录的属性值。可以统算,也可以分网站计算。
    Web Proppatch Requests/Sec 每秒使用 PROPPATCH 方法进行的 HTTP 请求数。Proppatch 请求设置文件和目录的属性值。可以统算,也可以分网站计算。
    Web Put Requests/Sec 每秒使用 PUT 方法进行的 HTTP 请求数。
    ASP Request Bytes In Total 所有请求的总计大小(以字节为单位)。
    ASP Request Bytes Out Total 发送到客户端的所有响应的总计大小(以字节为单位)。但不包括标准 HTTP 响应头。
    ASP Request Execution Time 执行最近的请求所花费的时间(以毫秒为单位)。
    ASP Request Wait Time 最近的请求在队列中等待的时间(以毫秒为单位)。
    ASP Requests Disconnected 由于通信失败而使连接断开的请求数。
    ASP Requests Executing 当前执行的请求数。
    ASP Requests Failed Total 由于错误、授权失败和拒绝而导致失败的请求总数。
    ASP Requests Not Authorized 由于访问权限不够而导致失败的请求数。
    ASP Requests Not Found 未找到文件的请求数。
    ASP Requests Queued 在队列中等待服务的请求数。
    ASP Requests Rejected 由于没有足够的资源对它们进行处理而没有执行的请求总数。
    ASP Requests Succeeded 成功执行的请求数。
    ASP Requests Timed Out 超时的请求数。
    ASP Requests Total 自服务启动后所有请求的总数。
    ASP Requests/Sec 每秒执行的请求数。
    ASP Script. Engines Cached 缓存中的脚本引擎数。
    Web Search Requests/Sec 每秒使用 MS SEARCH 方法进行的 HTTP 请求数。Search 请求用于对服务器进行查询,以查找符合客户端所需条件的资源。可以统算,也可以分网站计算。
    Web、FTP Service Uptime 服务或实例已经运行的秒数。当服务器或实例停止后,此值回到零。暂停不会影响此计数器。在 FTP 服务中,此计数器称为 FTP Service Uptime。
    ASP Session Duration 最近进行的会话所持续的时间(以毫秒为单位)。
    ASP Sessions Current 正在使用服务的会话数。
    ASP Sessions Timed Out 已超时的会话数。
    ASP Sessions Total 自服务启动后所有会话的总数。
    ASP Template Cache Hit Rate 在 ASP 模板缓存中找到的请求的百分比,包括内存中的和持续的。
    ASP Template Notifications 由于更改通知而无效的缓存中的模板数,包括内存中的和持续的。
    ASP Templates Cached 缓存的 ASP 模板总数,包括内存中的和持续的(在磁盘上)。
    IIS Global、Web Total Allowed Async I/O Requests 自服务启动后由 Web 和 FTP 服务允许的用户请求数。当限制带宽时,所允许的用户请求数也将受到限制。
    Web、FTP Total Anonymous Users 使用 Web 或 FTP 服务(自服务启动后)建立匿名连接的用户总数。如果客户端请求匿名连接被拒绝,但客户端用有效的身份验证数据来响应,则此连接将被视为非匿名连接。
    IIS Global Total BLOBs Cached 曾添加到 WWW 和 FTP 服务的缓存中的 BLOB 信息块总数。
    IIS Global、Web Total Blocked Async I/O Requests 自服务启动后由于带宽限制设置而暂时被阻止的请求总数。被阻止的请求存放在缓冲区中,如果在达到超时限制之前,有了更大的带宽,将解除阻止。
    WebTotal CGI Requests 自服务启动后所执行的通用网关接口 (CGI) 请求总数。CGI 请求是自定义的网关可执行文件 (.exefiles),管理员可以安装它以添加表单处理或其他动态数据源。CGI 请求将处理分散到服务器上会大大消耗服务器的资源。
    Web、FTP Total Connection Attempts 自启动服务后试图连接到 Web 或 FTP 服务的连接总数。此数是当前所有网站或 FTP 站点的最大个数,而不考虑为“实例”所做的选择。
    此数不包含在 TCP(传输)或 IP(网络)层失败的连接尝试。要监视所有连接尝试,请使用 TCP 性能对象上的 Connection计数器。有关获取和查看此对象的详细信息,请参阅 Windows 2000 Resource Kit。要监视当前的活动连接,请使用Current Connections。
    Web Total Copy Requests 使用 COPY 方法的 HTTP 请求总数(自服务启动后开始计算)。Copy 请求用于复制文件和目录。可以统算,也可以分网站计算。
    Web Total Count of failed CAL Requests for Authenticated Users 由于已验证的用户不能使用许可证而导致失败的 HTTP 请求数。此计数是自服务启动后的总数。可以统算,也可以分网站计算。
    Web Total Count of Failed CAL Requests for SSL connections 由于 SSL 连接不能使用许可证而导致失败的 HTTP 请求的总数。可以统算,也可以分网站计算。
    Web Total Delete Requests 使用 Delete 方法的 HTTP 请求数。
    IIS Global Total Files Cached 曾添加到 WWW 和 FTP 服务的缓存的文件总数。
    Web、FTP Total Files Received 自 Web 服务启动后由此服务接收的文件总数。
    Web、FTP Total Files Sent 自 Web 服务启动后由此服务发送的文件总数。
    Web、FTP Total Files Transferred 自 Web 服务启动后由此服务传输的文件总数。文件传输总数是发送文件总数和接收文件总数之和。
    IIS Global Total Flushed BLOBs 自服务启动后,已从缓存删除的 BLOB 信息块总数。
    IIS Global Total Flushed Files Total Flushed Files 是自服务启动后已从缓存删除的文件句柄数。
    IIS Global Total Flushed URIs 自服务启动后,已从缓存删除的 URI 信息块总数。
    Web Total Get Requests 由服务接收的 HTTP GET 请求的总数。虽然 GET 请求也可以用于表单,但是它们通常用于基本文件检索或图象映射。
    Web Total Head Requests 由服务接收的 HTTP HEAD 请求总数。HEAD 请求通常表明客户端正在查询现有文档的状态,查看此文档是否需要刷新。
    Web Total ISAPI Extension Requests 由服务接收的 HTTP ISAPI 扩展请求总数。ISAPI 扩展请求是自定义的网关动态链接库 (DLL),管理员可以安装它以添加表单处理或其他动态数据源。
    Web Total Lock Requests 使用 LOCK 方法的 HTTP 请求总数(自服务启动后开始计算)。Lock 请求用于将文件锁定于一个用户,使得只有此用户可以修改文件。可以统算,也可以分网站计算。
    Web Total Locked Errors 由于所请求的内容被锁定,而使服务器无法满足的请求总数。通常以 HTTP 423 错误代码方式报告客户端。此数是自服务启动后的总数。可以统算,也可以分网站计算。
    Web、FTP Total Logon Attempts 自 Web 或 FTP 服务启动后成功登录到此服务的总次数;不包括失败的登录尝试。要计算失败尝试(即客户端可以连接但无法登录),可用连接尝试次数减去登录尝试次数。
    Web Total Method Requests HTTP GET、POST、PUT、Delete、TRACE、HEAD 以及其他方法请求的总数。
    Web Total Method Requests/Sec 每秒使用 GET、POST、PUT、Delete、TRACE 或 HEAD 方法所进行的 HTTP 请求数。
    Web Total Mkcol Requests 使用 MKCOL 方法的 HTTP 请求的总数(自服务启动后开始计算)。Mkcol 请求用于在服务器上创建目录。
    Web Total Move Requests 使用 MOVE 方法的 HTTP 请求的总数(自服务启动后开始计算)。Move 请求用于移动文件和目录。
    Web、FTP Total NonAnonymous Users 使用 Web 或 FTP 服务建立非匿名连接的用户总数(自服务启动后)。如果客户端请求匿名连接被拒绝,但客户端用有效的身份验证数据来响应,则此连接将被视为非匿名连接。
    Web Total Not Found Errors 由于未找到所请求的文档,Web 服务无法满足的请求数;通常以 HTTP 404 错误代码方式向客户端报告。
    Web Total Options Requests 使用 OPTIONS 方法的 HTTP 请求的总数(自服务启动后开始计算)。
    Web Total Other Request Methods 不是 GET、POST、PUT、Delete、TRACE 或 HEAD 方法的 HTTP 请求的总数。可以包括 LINK 或网关应用程序支持的其他方法。
    Web Total Post Requests 使用 POST 方法的 HTTP 请求数。Post 请求通常用于表单或网关请求。
    Web Total Propfind Requests 使用 PROPFIND 方法的 HTTP 请求的总数(自服务启动后开始计算)。Propfind 请求设置文件和目录的属性值。可以统算,也可以分网站计算。
    Web Total Proppatch Requests 使用 PROPPATCH 方法的 HTTP 请求的总数(自服务启动后开始计算)。Proppatch 请求设置文件和目录的属性值。
    Web Total Put Requests 使用 PUT 方法的 HTTP 请求数。
    IIS Global、Web Total Rejected Async I/O Requests 自服务启动后由于带宽限制设置而被拒绝的用户请求总数。与被阻止的请求不同,被拒绝的请求不存放在缓冲区中。
    Web Total Search Requests 使用 MS SEARCH 方法的 HTTP 请求总数(自服务启动后开始计算)。Search 请求用于对服务器进行查询,以查找符合客户端所需条件的资源。可以统算,也可以分网站计算。
    Web Total Trace Requests 使用 TRACE 方法的 HTTP 请求数。
    Web Total Unlock Requests 使用 UNLOCK 方法的 HTTP 请求的总数(自服务启动后开始计算)。Unlock 请求用于取消对文件的锁定。可以统算,也可以分网站计算。
    IIS Global Total URIs Cached 曾添加到 WWW 和 FTP 服务的缓存中的 URI 信息块总数。
    Web Trace Requests/Sec 使用 TRACE 方法的 HTTP 请求的速率。
    ASP Transactions Aborted 已终止的事务数。
    ASP Transactions Committed 已提交的事务数。
    ASP Transactions Pending 正在处理的事务数。
    ASP Transactions Total 自服务启动后的事务总数。
    ASP Transactions/Sec 每秒启动的事务数。
    Web Unlock Requests/Sec 每秒使用 UNLOCK 方法进行的 HTTP 请求数。Unlock 请求用于取消对文件的锁定。可以统算,也可以分网站计算。
    IIS Global URI Cache Flushes 自服务器启动后的 URI 缓存刷新数。
    IIS Global URI Cache Hits URI 缓存中的成功查找总数。
    IIS Global URI Cache Hits % URI 缓存命中数占全部缓存请求的比率。
    IIS Global URI Cache Misses URI 缓存中的未成功查找总数
  • 高性能网页开发新20条规则详解 (有用的转载)

    2008-12-27 16:57:42

    高性能网页开发新20条规则详解
     
      上个月,Yahoo!优异性能(Yahoo!'s Exceptional Performance)开发团队成员 Stoyan Stefanov 出席了蒙特利尔的2008魁北克PHP会议演讲。他提供了他们团队最新的研究成果和提高网页性能规则20条。在早先的高性能网页开发14条军规已经让大家耳熟能详,此次新增的20条更加全面,覆盖了服务器端、cookies、页面内容、Javascrīpt、CSS、图片、移动手机应用这七大类别。以下内容就是根据这二十条结合个人在实际开发中的理解所做的全面解读。希望对大家开发有所助益。

     

    阅读指导:

    1. 每条规则后会指明是针对上述所说的七大类别中哪个类别的优化。

    2. 文中提到的一些工具在文后附注中会提供简要说明。

    3. 文中经常提到“组件”这个词,这个词不同于我们程序开发中常提到的组件概念。本文中提到的“组件”特指嵌在HTML页面中图片、Javascrīpt脚本、CSS等静态文件。

    一、尽早清除缓冲区[服务器端]

        假如用户请求一个页面,而这个页面在后端服务器需要花200至500毫秒乃至更长时间才能生成最终HTML页面,这时候用户浏览器处于较长时间的、等待页面数据返回的空闲状态,用户体验不会很好。此时可以根据页面内容长短做适当分隔,将先生成的页面局部HTML缓冲内容提前发送到客户端,不必让服务器消耗内存缓冲完整个庞大的页面内容后再行输出。这种方法有益于处理后端负荷大而前端负荷轻的页面。

        在HTML页面的head标签位置后是清除缓冲的好位置,因为HTML的head标签可以包括 CSS 和 Javascrīpt 文件,对于浏览器而言获取页面显示与后端服务器处理并行的效果较好。在PHP中有一个函数 flush(),它可以发送请求页面的局部HTML代码给浏览器,以便浏览器能先取得页面已经生成的部分HTML,同时后端服务器继续忙于处理生成页面余下的HTML。以下以此函数做个示例:

     

    ... <!-- css, js -->

    </head>

    <!-- 注意此处flush()是放在了head标签位置后面 -->

    <?php flush(); ?>

    <body>

    ... <!-- content -->

     

        其他语言也有类似语法,如ASP.NET和ASP中的 Response.Flush()。

        注意:在实际Web开发中,尽量减少HTTP请求次数是优化的重要方面,这条基本原则是早先14条和新增20条中很多规则的制订基础,实际上它也是14条规则中第一条也是非常重要的一条规则,但是使用尽早清除缓冲语句会增加一个页面的HTTP请求次数,这无疑是一个矛盾,因此请注意本条规则的适用范围,不要滥用它。

    二、使用GET方法的AJAX请求[服务器端]

        这个容易理解一些。AJAX经常要用XMLHttpRequest,但是它的POST方法在浏览器中完成需要执行两步:首先发送信息头,然后才是发送数据;而GET方法只用一个TCP数据包传递(cookies信息例外)即可,减少了一个步骤,速度会快些。

        另外根据HTTP规范,GET方法就是为获取信息而生的。因此仅在请求数据而不是发送数据给服务器端存储时,使用GET方法很有意义。

        要注意的是,IE中URL允许最大允许长度是2K,用GET方法发送数据时注意2K的这个限制。

    三、后加载组件[页面内容]

        使用该方法的意义在于:如果某个页面内容丰富多彩的话,在浏览器加载显示它时速度就不会很快。使用后加载组件的方法可以通过延迟加载一些隐藏内容来保证浏览器优先显示初始页面。

        要做到这一点必须仔细观察自己的页面并且问自己:“解释生成一个完整页面,什么部分内容是开始加载时绝对必须显示的?”清楚了这个问题,那么那些余下内容和组件就可以采用后加载方法延迟生成。这样会大大加快页面显示速度。

        这个技巧通常是Javascrīpt通过处理页面加载时的onload事件完成。例如,使用Javascrīpt代码和库去执行拖放动态效果操作时,这些操作可以延迟,因为拖动页面上元素的操作只能等初始页面生成完后才能发生。页面中的隐藏内容也适合用后加载方式,因为只有页面加载完毕用户才能操作决定是否显示该内容。

        Yahoo!网站的首页内容繁多,观察处于隐藏状态下的内容,这些内容通常在一些选项卡一样的标签页当中,只有点击后才会加载。

        只要明白该规则的优化要点后相信大家可以通过Javascrīpt做出自己的具体实现。Yahoo!提供了两个用于实现后加载方法的工具:

    ◆ YUI Image Loader:可以延迟图片显示

    ◆ YUI Get utility:它可以在页面加载完成后把Javascrīpt和CSS资源绑定到DOM上去。

        以上的工具是Yahoo!的YUI库提供。

    四、预加载组件[页面内容]

        从文字上看预加载组件与后加载组件似乎作用相反,但实际上二者目标是完全不同的。通过预先加载组件可以充分利用浏览器的空闲时间,并且可以请求未来页面需要的组件。在这种情况下,当用户访问下一个页面时,你已经提前让大多数组件保存在缓存中,用户加载这个页面就会非常快。

        预加载类型有下列三种:

     

    1. 无条件预加载

        onload事件一触发,就要马上取回一些指定的组件。可以检查google.com首页中onload事件中请求Sprite图片的例子(注:什么是Sprite图片,请参看第十六条规则)。在这个例子可以看出这个sprite图片www.google.com/images/nav_logo3.png在google.com首页本身并不需要, 但它会在随后用户搜索生成的结果页面中需要。

     

     

    2. 条件预加载

        根据用户操作预测用户下一步操作的方向,并据此做预加载。例如,search.yahoo.com中,在输入框中刚键入几个字符后,就会看到页面对你键入的词做出合理推测,推出几个可能要搜索的实际关键词。此方法目前谷歌(google.cn)也在使用。

     

    3. 提前预加载

        在将重新设计的网站页面发布前用此法较好。页面重新设计后常会有这样的反馈:“新站点太酷了,就是比以前慢”。原因在于用户访问旧站点是全缓存的,但新站点还没有缓存过。这时可以在发布新设计前就预加载一些新站点组件,这可以减少没有缓存的副作用。可以利用用户访问旧站点时浏览器空闲的时间请求新站点要使用的图片、脚本等。

    五、减少 DOM 元素数量[页面内容]

        一个复杂的页面意味着要请求下载的字节数更多,也意味着用Javascrīpt访问DOM速度更慢。

        如何尽量减少已有页面的 DOM 元素数量呢?一个重要的思路就是不要滥用表格table和div 。很多人习惯用一些网页编辑软件去设计页面,这样会导致大量嵌套的表格或在使用语义不合法的标记。使用div要仅当它在语义上有意义时才使用它,有些开发者使用它仅仅是因为它可以被浏览器解释生成一个新行。

        Yahoo! 提供了一个避免这些问题的方法——使用YUI CSS工具。grids.css 有助于整体布局设计,fonts.css 和 reset.css 有且于清除浏览器的默认格式设置。这些工具可以在Yahoo!的YUI页面中去找。

        DOM元素的数量可在Firebug的Console上键入 document.getElementsByTagName('*').length 得到。

        DOM 元素不超过多少才适当呢?这可以通过检查一些有良好设计的页面来感觉比较。如Yahoo! 主页访问量相当大,它的数量在700个元素(HTML标签)以下。

    六、分隔组件到多个域中[页面内容]

        对终端用户响应时间影响最大的就是所请求页面所含组件数量。只要浏览器缓存为空,下载每个组件需要占用额外的HTTP请求,只有缓存满时才可能不占用。

        HTTP/1.1规范中建议浏览器对每一个主机名允许并发下载两个组件。默认状态下,Internet Explorer和Firefox都符合这个规范。注意:IE8.0默认允许6个并发请求。

        许多网页中所有组件都从同一主机名中下载,这时不仅响应时间受并发线程数限制,同时也受该服务器CPU和带宽限制。把页面组件分布在两个主机名中,整体响应时间就会快2倍,CPU和带宽消耗也会得以分担。

    七、尽量减少 HTML 标签 iframe 的使用数[页面内容]

        iframe允许在父文档内插入一个HTML文档。要想高效使用iframes,理解它的工作方式很重要。

        使用iframe有如下好处:

    ◆ 有助于减慢显示第三方标记和广告内容。

    ◆ 是个安全的 Sandbox。

    ◆ 能并发下载脚本。

    但同时也有弊端:

    ◆ 即使iframe 内的 HTML 文档内容为空,消耗也比较高。

    ◆ 会阻止页面的onload事件

    ◆ 非语义的

    八、避免404页面[页面内容]

        如果做了一个HTTP请求然后得到一个无用的响应页面,不仅完全不必要而且会降低用户体验。404页面就是在没有发现指定资源时返回的页面。

        一些站点提供了有益的404提示,对用户体验有好处,但这毕竟浪费了服务器资源。当链接一个外部Javascrīpt文件,而它又出了404错误,这尤其糟糕。首先,因为这个下载有问题会阻止并发下载;其次,即使有错浏览器仍然会尽力解析404返回的内容,看看有无Javascrīpt代码,尽力查找里面可用代码。


     

  • JSP的特点和其它动态网页开发技术比较

    2008-10-18 16:26:43

    【转载】JSP的特点和其它动态网页开发技术比较
    JSP技术特点:

    1.将内容的生成和显示进行分离

    使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和Beans中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。

    在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBCTM技术访问数据库,或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。

     2.强调可重用的组件

    绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者Enterprise JavaBeansTM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执 行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。

    3.采用标识简化页面开发

    Web页面开发人员不会都是熟悉脚本语言的编程人员。JavaServer Page技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。

    标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。通过开发定制化标识库,JSP技术是可以扩展的。今后,第三方开发人员和其他人员可以为常用功能创建自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来工作。

    JSP技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且扩展到能够支持企业级的分布式应用。作为采用Java技术家族的一部分,以及Java 2(企业版体系结构)的一个组成部分,JSP技术能够支持高度复杂的基于Web的应用。

    由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译成为Java Servlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。

    作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。随着越来越多的供应商将JSP支持添加到他们的产品中,您可以使用自己所选择的服务器和工具,更改工具或服务器并不影响当前的应用。

    与其它动态网页技术的比较:
    与传统的CGI方式相比

     

    a. 后台实现逻辑是基于Java Component的,具有跨平台的特点

    b. 将应用逻辑与页面表现分离,使得应用逻辑能够最大程度得到复用,从而提高开发效率

    c. 运行比CGI方式高,尤其对于数据库访问时,提供了连接池缓冲机制,使运行所需资源最小

    d. 安全,由于后台是完全基于Java技术的,安全性由Java的安全机制予以保障

    e. 由于与ASP很近似,不需要太多的编程知识就可以动手编写JSP

    f. 内置支持XML,使用XML从而使页面具有更强的表现力和减少编程工作量

     

    与Asp和php的比较

     

    目前,最常用的三种动态网页语言有ASP(Active Server Pages),JSP(Java Server Pges),PHP (Hypertext Preprocessor)。

     

    ASP全名Active Server Pages,是一个WEB服务器端的开发环境, 利用它可以产生和运行动态的、交互的、高性能的WEB服务应用程序。ASP采用脚本语言VB scrīpt(Java scrīpt)作为自己的开发语言。

     

    PHP是一种跨平台的服务器端的嵌入式脚本语言. 它大量地借用C,Java和Perl语言的语法, 并耦合PHP自己的特性,使WEB开发者能够快速地写出动态生成页面.它支持目前绝多数数据库。还有一点,PHP是完全免费的,不用花钱,你可以从PHP官方站点(http://www.php.net)自由下载。而且你可以不受限制地获得源码,甚至可以从中加进你自己需要的特色。

     

    JSP 是Sun公司推出的新一代站点开发语言,他完全解决了目前ASP,PHP的一个通病--脚本级执行(据说PHP4 也已经在Zend 的支持下,实现编译运行).Sun 公司借助自己在Java 上的不凡造诣,将Java 从Java 应用程序 和 Java Applet 之外,又有新的硕果,就是Jsp--Java Server Page。Jsp 可以在Serverlet和JavaBean的支持下,完成功能强大的站点程序。

     

    三者都提供在 HTML 代码中混合某种程序代码、由语言引擎解释执行程序代码的能力。但JSP代码被编译成 Servlet 并由 Java 虚拟机解释执行,这种编译操作仅在对 JSP页面的第一次请求时发生。在 ASP 、PHP、JSP 环境下, HTML 代码主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑。普通的 HTML 页面只依赖于 Web 服务器,而 ASP 、PHP、JSP 页面需要附加的语言引擎分析和执行程序代码。程序代码的执行结果被重新嵌入到 HTML 代码中,然后一起发送给浏览器。 ASP 、PHP、 JSP三者都是面向 Web 服务器的技术,客户端浏览器不需要任何附加的软件支持。

     

    JSP vs ASP

     

    JSP跨平台,而且支持Apache, Netscape, IIS,IBM Http Server在内的所有主流Web Server (市场份额在85%以上),而ASP目前只支持NT+IIS(市场份额在20%左右);提供了更好的安全机制,这对于e-business这样的应用来说是至关重要的; JSP可以跨操作系统、Web Server和应用服务器,而ASP只限于NT+IIS;

     

    JSP是一个开放的标准,得到了Oracle, Netscape, IBM & WebLogic, Inprise等的支持;JSP的组件编写更为容易,而且JSP的性能由于ASP;

     

    JSP vs PHP

     

    JSP是一个业界标准,得到Sun,IBM,Oracle,BEA,Apache等 的支持,PHP只是一个开发组织并不强的free ware ;PHP的性能不好,是解释型的,JSP采用JIT编译后,和c不相上下,而且支持多线程; JSP支持的平台众多,从Win98,NT,Unix,Linux,FreeBSD到AS/400,OS/390,而PHP支持的平台有限; JSP可以利用JDBC和众多主流关系数据库连接,而PHP目前只支持MySql和Oracle等有限的几种; JSP中的组件,JavaBean和EJB开发非常容易,而且还可以在JSP中使用Java所有的类和功能。而PHP只能用C写一些功能有限的组件,而且编写较为复杂; 利用JSP可以支持EJB,以支持Transaction和CORBA标准,而且还可以支持LDAP,Message等服务,使得访问ERP,CICS,MQ等企业应用非常容易。而PHP在这方面先天不足,所以对于电子商务这样的Mission-critical的应用来说,PHP并不适合。

     

    性能比较

     

    有人做过试验,对这三种语言分别做循环性能测试及存取Oracle数据库测试。在循环性能测试中,JSP只用了令人吃惊的四秒钟就结束了20000*20000的循环。而ASP、PHP测试的是2000*2000循环(少一个数量级),却分别用了63秒和84秒。

     

    数据库测试中,三者分别对 Oracle 8 进行 1000 次 Insert,Update,Select,和Delete: Jsp 需要 13 秒,Php 需要 69 秒,ASP则 需要 73 秒。

     

    前景分析

     

    目前在国内PHP与ASP应用最为广泛。而JSP由于是一种较新的技术,国内采用的较少。但在国外,JSP已经是比较流行的一种技术,尤其是电子商务类的网站,多采用JSP。

     

    采用PHP的网站如新浪网(sina)、中国人(Chinaren)等,但由于PHP本身存在的一些缺点,使得它不适合应用于大型电子商务站点,而更适合一些小型的商业站点。

     

    首先,PHP缺乏规模支持。其次,缺乏多层结构支持。对于大负荷站点,解决方法只有一个:分布计算。数据库、应用逻辑层、表示逻辑层彼此分开,而且同层也可以根据流量分开,组成二维阵列。而PHP则缺乏这种支持。还有上面提到过的一点,PHP提供的数据库接口支持不统一,这就使得它不适合运用在电子商务中。

     

    ASP和JSP则没有以上缺陷,ASP可以通过Microsoft Windowsd的COM/DCOM获得ActiveX规模支持,通过DCOM和Transcation Server获得结构支持;JSP可以通过SUN Java的Java Class和EJB获得规模支持,通过EJB/CORBA以及众多厂商的Application Server获得结构支持。

     

    三者中,JSP应该是未来发展的趋势。世界上一些大的电子商务解决方案提供商都采用JSP/Servlet。比较出名的如IBM的E-business,它的核心是采用JSP/Servlet的WebSphere;西方另外一个非常著名的电子商务软件提供商,Intershop。它原来的产品Intershop1 2, 3, 4占据了主要的电子商务软件份额。它们都是通过CGI来提供支持 的。但去年10月后它推出了Enfinity,一个采用JSP/Servlet的电子商务Application Server,而且声言不再开发传统软件。

     

    JSP应用范围:

     

    JSP同PHP类似,几乎可以运行于所有平台。如Win NT,Linux,Unix. NT下IIS通过一 个插件,例如JRUN或者ServletExec,就能支持JSP。著名的Web服务器Apache已经能够支持JSP。由于Apache广泛应用在NT、Unix和Linux上,因此JSP有更广泛的运行平台。虽然现在NT操作系统占了很大的市场份额,但是在服务器方面Unix的优势仍然很大,而新崛起的Linux更是来势不小。从一个平台移植到另外一个平台,JSP和JavaBean甚至不用重新编译,因为Java字节码都是标准的与平台无关的。

     

  • Tomcat集群与负载均衡

    2008-10-11 15:01:21

    在进入集群系统架构探讨之前,先定义一些专门术语:
    1. 集群(Cluster):是一组独立的计算机系统构成一个松耦合的多处理器系统,它们之间通过网络实现进程间的通信。应用程序可以通过网络共享内存进行消息传送,实现分布式计算机。
    2. 负载均衡(Load Balance):先得从集群讲起,集群就是一组连在一起的计算机,从外部看它是一个系统,各节点可以是不同的操作系统或不同硬件构成的计算机。如一个提供Web服务的集群,对外界来看是一个大Web服务器。不过集群的节点也可以单独提供服务。
    3. 特点:在现有网络结构之上,负载均衡提供了一种廉价有效的方法扩展服务器带宽和增加吞吐量,加强网络数据处理能力,提高网络的灵活性和可用性。集群系统(Cluster)主要解决下面几个问题:
    高可靠性(HA):利用集群管理软件,当主服务器故障时,备份服务器能够自动接管主服务器的工作,并及时切换过去,以实现对用户的不间断服务。
    高性能计算(HP):即充分利用集群中的每一台计算机的资源,实现复杂运算的并行处理,通常用于科学计算领域,比如基因分析,化学分析等。
    负载平衡:即把负载压力根据某种算法合理分配到集群中的每一台计算机上,以减轻主服务器的压力,降低对主服务器的硬件和软件要求。

    目前比较常用的负载均衡技术主要有:
      1. 基于DNS的负载均衡
      通过DNS服务中的随机名字解析来实现负载均衡,在DNS服务器中,可以为多个不同的地址配置同一个名字,而最终查询这个名字的客户机将在解析这个名字时得到其中一个地址。因此,对于同一个名字,不同的客户机会得到不同的地址,他们也就访问不同地址上的Web服务器,从而达到负载均衡的目的。

      2. 反向代理负载均衡 (如Apache+JK2+Tomcat这种组合)
      使用代理服务器可以将请求转发给内部的Web服务器,让代理服务器将请求均匀地转发给多台内部Web服务器之一上,从而达到负载均衡的目的。这种代理方式与普通的代理方式有所不同,标准代理方式是客户使用代理访问多个外部Web服务器,而这种代理方式是多个客户使用它访问内部Web服务器,因此也被称为反向代理模式。

      3. 基于NAT(Network Address Translation)的负载均衡技术 (如Linux Virtual Server,简称LVS)
      网络地址转换为在内部地址和外部地址之间进行转换,以便具备内部地址的计算机能访问外部网络,而当外部网络中的计算机访问地址转换网关拥有的某一外部地址时,地址转换网关能将其转发到一个映射的内部地址上。因此如果地址转换网关能将每个连接均匀转换为不同的内部服务器地址,此后外部网络中的计算机就各自与自己转换得到的地址上服务器进行通信,从而达到负载分担的目的。

    介绍完上面的集群技术之后,下面就基于Tomcat的集群架构方案进行说明:

    上面是采用了Apache httpd作为web服务器的,即作为Tomcat的前端处理器,根据具体情况而定,有些情况下是不需要Apache httpd作为 web 服务器的,如系统展现没有静态页面那就不需要Apache httpd,那时可以直接使用Tomcat作为web 服务器来使用。使用Apache httpd主要是它在处理静态页面方面的能力比Tomcat强多了。
    1、 用户的网页浏览器做完本地 DNS和企业授权的DNS之的请求/响应后,这时候企业授权的DNS(即21cn BOSS DNS)会给用户本地的DNS服务器提供一个NAT请求分配器(即网关)IP。


    2、 NAT分配器,它会根据特定的分配算法,来决定要将连接交给哪一台内部 Apache httpd来处理请求。大多数的NAT请求分配器提供了容错能力:根据侦测各种WEB服务器的失效状况,停止将请求分配给已经宕掉的服务器。并且有些分配器还可以监测到WEB服务器机器的负载情况,并将请求分配给负载最轻的服务器等等。Linux Virtual Server是一个基于Linux操作系统上执行的VS-NAT开源软件套件,而且它有丰富的功能和良好的说明文件。商业硬件解决方案 Foundry Networks的ServerIron是目前业界公认最佳的请求分配器之一。


    3、 Apache httpd + Mod_JK2在这里是作为负载均衡器,那为什么要做集群呢?如果集群系统要具备容错能力,以便在任何单一的硬件或软件组件失效时还能100%可用,那么集群系统必须没有单点故障之忧。所以,不能只架设一台有mod_jk2的Apache httpd,因为如果 httpd或mod_jk2失效了,将不会再有请求被会送交到任何一个Tomcat 实例。这种情况下,Apache httpd就是瓶劲,特别在访问量大的网站。


    4、 Mod_JK2负载均衡与故障复原,决定把Apache httpd当成web服务器,而且使用mod_jk2将请求传送给Tomcat,则可以使用mod_jk2的负载均衡与容错功能。在集群系统中,带有mod_jk2的Apache httpd可以做的事情包括:
    A、 将请求分配至一或多个Tomcat实例上
    你可以在mod_jk2的workers.properties文件中,设定许多Tomcat实例,并赋于每个实例一个lb_factor值,以作为请求分配的加权因子。


    B、 侦测Tomcat实例是否失败
    当Tomcat实例的连接器服务不再响应时,mod_jk2会及时侦测到,并停止将请求送给它。其他的Tomcat实例则会接受失效实例的负载。


    C、 侦测Tomcat实例在失效后的何时恢复
    因连接器服务失效,而停止将请求分配给Tomcat实例之后,mod_jk2会周期性地检查是否已恢复使用性,并自动将其加入现行的Tomcat实例池中。


    5、 Tomcat中的集群原理是通过组播的方式进行节点的查找并使用TCP连接进行会话的复制。这里提示一下就是,对每个请求的处理,Tomcat都会进行会话复制,复制后的会话将会慢慢变得庞大。


    6、 Mod_jk2同时支持会话亲和和会话复制。在tomcat 5中如何实现会话亲和和会话复制?把server.xml中的标签去掉就实现会话亲和,把标签加上就实现会话复制。


    7、 会话亲和:就是表示来自同会话的所有请求都由相同的Tomcat 实例来处理,这种情况下,如果Tomcat实例或所执行的服务器机器失效,也会丧失Servlet的会话数据。即使在集群系统中执行更多的Tomcat实例,也永远不会复制会话数据。这样是提高集群性能的一种方案,但不具备有容错能力了。


    8、 使用会话复制,则当一个Tomcat实例宕掉时,由于至少还有另一个Tomcat实例保有一份会话状态数据,因而数据不会丧失。但性能会有所降低。 

  • 程序员, 超越软件蓝领的七种武器[转]

    2008-10-07 16:47:36

    第一种武器:开发工具

      至少熟练掌握两到三种开发工具的使用,这是程序员的立身之本,其中C/C++和JAVA是我重点推荐的开发工具,C/C++以其高效率和高度的灵活性成为开发工具中的利器,很多系统级的软件还是用C/C++编写。而JAVA的跨平台和与WEB很好的结合是JAVA的优势所在,而本人对SUN公司的“网络即计算机”的概念相当欣赏,并相信JAVA即其相关的技术集JAVA One会成为未来的主流开发工具之一。其次,如果能掌握一种简便的可视化开发工具,如VB,PowerBuilder,Delphi,C++ Builder,则更好,这些开发工具减小了开发难度,并能够强化程序员对象模型的概念。另外,需要掌握基本的脚本语言,如shell,perl等,至少能读懂这些脚本代码。

      PS:作为程序员,掌握算法与数据结构、精通一种以上编程语言、熟悉开发工具,是最基本的技术要求!

      第二种武器:数据库

      为什么数据库是如此重要?很多应用程序都是以数据库的数据为中心,而数据库的产品也有不少,其中关系型数据库仍是主流形式,所以程序员至少熟练掌握一两种数据库,对关系型数据库的关键元素要非常清楚,要熟练掌握SQL的基本语法。虽然很多数据库产品提供了可视化的数据库管理工具,但SQL是基础,是通用的数据库操作方法。如果没有机会接触商业数据库系统,可以使用免费的数据库产品是一个不错的选择,如mySQL, Postgres等。

      第三种武器:操作系统

      当前主流的操作系统是Windows,Linux/Unix,熟练地使用这些操作系统是必须的,但只有这些还远远不够。要想成为一个真正的编程高手,需要深入了解操作系统,了解它的内存管理机制、进程/线程调度、信号、内核对象、系统调用、协议栈实现等。Linux作为开发源码的操作系统,是一个很好的学习平台,Linux几乎具备了所有现代操作系统的特征。虽然Windows系统的内核实现机制的资料较少,但通过互联网还是能获取不少资料。只有对操作系统有一定的了解后,你会发现自己上了一个新的台阶。

      第四种武器:网络协议TCP/IP
     
      在互联网如此普及的今天,如果您还没有对互联网的支撑协议TCP/IP协议栈有很好的掌握,就需要迅速补上这一课,网络技术已改变了软件运行的模式,从最早的客户/服务器结构,到今天的WEB Services,再到未来的网格计算,这一切都离不开以TCP/IP协议栈为基础的网络协议支持,所以,深入掌握TCP/IP协议是非常必要的。至少,你需要了解ISO七层协议模型,IP/UDP/TCP/HTTP等常用协议的原理和三次握手机制。

      第五种武器:DCOM/CORBA/XML/WEB Services

      随着技术的发展,软件与网络的无缝结合是必然趋势,软件系统的位置无关性是未来计算模式的重要特征之一,DCOM/CORBA是当前两大主流的分布计算的中间件平台,DCOM是微软COM(组件对象模型)的扩展,而CORBA是OMG支持的规范。程序员需要做的不仅仅是利用商业的开发平台来开发软件,而是要理解这些技术的初衷,即为什么需要这项技术,如果你能理解了这一点,再回头看这些技术的具体实现,就如庖丁解牛,迎刃而解。XML/WebServices重要性不言而喻,XML以其结构化的表示方法和超强的表达能力被喻为互联网上的“世界语”,是分布计算的基石之一。

      第六种武器:软件工程与CMM

      现代大型软件系统的开发中,工程化的开发控制取代个人英雄主义,成为软件系统成功的保证,一个编程高手并不一定是一个优秀的程序员,一个优秀的程序员是将出色的编程能力和开发技巧同严格的软件工程思想有机结合,编程只是软件生命周期中的其中一环,优秀的程序员应该掌握软件开发各个阶段的基本技能,如市场分析,可行性分析,需求分析,结构设计,详细设计,软件测试等。一句话可以概括我的看法:“创意无限,流程保证”。

      第七种武器:强烈的好奇心

      什么才是一个程序员的终极武器呢,那就是强烈的好奇心和学习精神。没有比强烈的好奇心和学习精神更好的武器了,它是程序员们永攀高峰的源泉和动力所在

  • 软件缺陷管理基本概念

    2008-09-12 10:38:35

    【转载】软件缺陷管理基本概念

    认识软件缺陷,首先要了解软件缺陷的概念,其次是了解软件缺陷的详细特征,最后就是它的属性了,再高一个层次就是学习利用管理软件缺陷的工具了。
    1、首先介绍软件缺陷的概念
    软件缺陷是指系统或系统部件中那些导致系统或部件不能实现其功能的缺陷。
    2、软件缺陷的详细特征
    a、单一准确
    b、可以再现(要求软件缺陷具有精确的步骤)
    c、完整统一
    d、短小简练
    e、特定条件
    f、补充完整
    g、不做评价
    3、软件缺陷的属性
    软件缺陷的属性包括缺陷标识、缺陷类型、缺陷严重程度、缺陷产生可能性、缺陷优先级、缺陷状态、缺陷起源、缺陷来源、缺陷原因。
    下面详细介绍一下以上这些属性:
    a、缺陷标识:是标记某个缺陷的唯一标识,可以用数字序号表示;
    b、缺陷类型:功能、用户界面、文档、软件包、性能、系统"模块接口
         功能:影响了各种系统功能、逻辑的缺陷;
         用户界面:影响了用户界面、人机交互特性,包括屏幕格式、用户输入灵活性、结果输入格式等方面的缺陷;
         文档:影响发布和维护,包括注释、用户手册、设计文档;
         软件包:由于软件配置库、变更管理或版本控制引起的错误;
         性能:不满足系统可测量的属性值,如执行时间、事务处理速率等;
         系统"模块接口:与其他组件、模块或设备驱动程序、调用参数、控制块或参数列表等不匹配、冲突。
    c、缺陷严重程度:致命(Fatal)、严重(Ceritical)、一般(Major)、较小(Minor)
        致命:系统任何一个主要功能完全丧失,用户数据受到破坏,系统崩溃、悬挂、死机或者危机人身安全;
        严重:系统的主要功能部分丧失,数据不能保存,系统的次要功能完全丧失,系统所提供的功能或服务受到明显的影响;
        一般:系统的次要功能没有完全实现,但不影响用户的正常使用。例如:提示信息不太准确或用户界面差、操作时间长等一些问题;
        较小:使操作者不方便或遇到麻烦,但它不影响功能过的操作和执行,如个别不影响产品理解的错别字、文字排列不整齐等一些小问题
    d、缺陷产生可能性:总是、通常、有时、很少
         总是:总是产生这个软件缺陷,其产生的频率是100;
         通常:按照测试用例,通常情况下会产生这个软件缺陷,其产生的频率大概是80—90;
         有时:按照测试用例,有时候产生这个软件缺陷,其产生的频率大概是30—50;
         很少:按照测试用例,很少产生这个软件缺陷,其产生的频率大概是1—5.
    e、缺陷的优先级:立即解决、高优先级、正常排队、低优先级
         立即解决:缺陷导致系统几乎不能使用或者测试不能继续,需立即修复;
         高优先级:缺陷严重,影响测试,需要优先考虑;
         正常排队:缺陷需要正常排队等待修复;
         低优先级:缺陷可以再开发人员有时间的时候被纠正。
    f、缺陷状态:激活或打开、已修正或修复、关闭或非激活、重新打开、推迟、保留、不能重现、需要更多信息
        激活或打开:问题还没有解决,存在源代码中,确认”提交的缺陷”,等待处理,如新报的缺陷;
        已修正或修复:已被开发人员检查、修复过的缺陷,通过单元测试,认为已经解决但还没有被测试人员验证;
        关闭或非激活:测试人员验证后,确认缺陷不存在之后的状态;
        重新打开:测试人员验证后,确认缺陷不存在之后的状态;
        推迟:这个软件缺陷可以在下一个版本中解决;
        保留:由于技术原因或第三者软件的缺陷,开发人员不能修复的缺陷;
        不能重现:开发不能再现这个软件缺陷,需要测试人员检查缺陷再现的步骤;
         需要更多信息:开发能再现这个软件缺陷,但开发人员需要一些信息,例如缺陷的日志文件、图片等。
    g、软件缺陷的起源:需求、构架、设计、编码、测试、用户
         在团建生命周期中软件缺陷占的比例:需求和构架设计阶段占54、设计阶段占25、编码阶段占15、其他占6.
    h、软件缺陷的来源:需求说明书、设计文档、系统集成接口、数据流(库)、程序代码
        需求说明书:需求说明书的错误或不清楚引起的问题;
        设计文档:设计文档描述不准确。和需求说明书不一致的问题;
        系统集成接口:系统个模块参数不匹配、开发组之间缺乏协调引起的缺陷;
        数据流(库):由于数据字典、数据库中的错误引起的缺陷;
        程序代码:纯粹在编码中的问题所引起的缺陷。
    i、缺陷根源:测试策略,过程、工具和方法,团队"人,缺乏组织和通讯,硬件,软件,工作环境
       测试策略:错误的测试范围,误解测试目标,超越测试能力等;
       过程、工具和方法:无效的需求收集过程,果实的风险管理过程,不使用的项目管理方法,没有估算规程,无效的变更控制过程等;
       团队"人:项目团队职责交叉,缺乏培训。没有经验的项目团队,缺乏士气和动机不纯等;
       缺乏组织和通讯:缺乏用户参与,职责不明确、管理失败等;
       硬件:硬件配置不对、缺乏、或处理器缺陷导致算术精度丢失,内存溢出等;
       软件:软件设置不对、缺乏,或操作系统错误导致无法释放资源,工具软件的错误,编译器的错误,千年虫问题等;
       工作环境:组织机构调整,预算改变,工作环境恶劣,如噪音过大。
    4、学会利用管理缺陷的工具
    例如TD、bugfree、bugzille等

  • [转载]程序员应具备的素质

    2008-09-12 10:27:02

    [转载]程序员应具备的素质

    中国有很多精于编码的人,但是中国软件行业,尤其是网络应用开发方面误区很大,很难形成有规模的软件开发力量和产品能力,不但比美国差距甚远,和印度相比也是颇有不如。这些问题不是在于中国程序员的智商和工作努力状况,也不是在于国家和民间对开发的投入程度,而是很大程度上,有一些对技术,对程序开发,对项目设计方面的思想误区,这些误区,导致了软件行业的产品化能力不足,缺乏规模化和大型复用系统研发能力,可以说,改变认识误区,是解决软件行业小作坊模式和个体英雄模式所带来的局限性的重要工作。

    程序员是一种技术工作,在IT的发展中有相当重要的地位,从底层硬件通讯协议的建立,到数据传输层的处理,到操作系统的建设,到数据库平台的建设,一直到应用层上各种数据营销平台的搭建,程序员在里面都扮演着举足轻重的角色并为IT事业的发展做出了巨大的贡献。

    中国有很多小朋友,他们18,9岁或21,2岁,通过自学也写了不少代码,他们有的代码写的很漂亮,一些技术细节相当出众,也很有钻研精神,但是他们被一些错误的认识和观点左右,缺乏对系统,对程序的整体理解能力,这些人,一个网上的朋友说得很好,他们实际上只是一些Coding fans,压根没有资格称为程序员,但是据我所知,不少小网络公司的CTO就是这样的coding fans,拿着吓人的工资,做着吓人的项目,项目的结局通常也很吓人。

    程序员基本素质:

    作一个真正合格的程序员,或者说就是可以真正合格完成一些代码工作的程序员,应该具有的素质。

    1:团队精神和协作能力
    把它作为基本素质,并不是不重要,恰恰相反,这是程序员应该具备的最基本的,也是最重要的安身立命之本。把高水平程序员说成独行侠的都是在呓语,任何个人的力量都是有限的,即便如linus这样的天才,也需要通过组成强大的团队来创造奇迹,那些遍布全球的为linux写核心的高手们,没有协作精神是不可想象的。独行侠可以作一些赚钱的小软件发点小财,但是一旦进入一些大系统的研发团队,进入商业化和产品化的开发任务,缺乏这种素质的人就完全不合格了。

    2:文档习惯
    说高水平程序员从来不写文档的肯定是乳臭未干的毛孩子,良好的文档是正规研发流程中非常重要的环节,作为代码程序员,30%的工作时间写技术文档是很正常的,而作为高级程序员和系统分析员,这个比例还要高很多。缺乏文档,一个软件系统就缺乏生命力,在未来的查错,升级以及模块的复用时就都会遇到极大的麻烦。

    3:规范化,标准化的代码编写习惯
    作为一些外国知名软件公司的规矩,代码的变量命名,代码内注释格式,甚至嵌套中行缩进的长度和函数间的空行数字都有明确规定,良好的编写习惯,不但有助于代码的移植和纠错,也有助于不同技术人员之间的协作。 有些coding fans叫嚣高水平程序员写的代码旁人从来看不懂,这种叫嚣只能证明他们自己压根不配自称程序员。代码具有良好的可读性,是程序员基本的素质需求。 再看看整个linux的搭建,没有规范化和标准化的代码习惯,全球的研发协作是绝对不可想象的。

    4:需求理解能力
    程序员需要理解一个模块的需求,很多小朋友写程序往往只关注一个功能需求,他们把性能指标全部归结到硬件,操作系统和开发环境上,而忽视了本身代码的性能考虑,有人曾经放言说写一个广告交换程序很简单,这种人从来不知道在百万甚至千万数量级的访问情况下的性能指标是如何实现的,对于这样的程序员,你给他深蓝那套系统,他也做不出太极链的并访能力。性能需求指标中,稳定性,并访支撑能力以及安全性都很重要,作为程序员需要评估该模块在系统运营中所处的环境,将要受到的负荷压力以及各种潜在的危险和恶意攻击的可能性。就这一点,一个成熟的程序员至少需要2到3年的项目研发和跟踪经验才有可能有心得。

    5:复用性,模块化思维能力
    经常可以听到一些程序员有这样的抱怨,写了几年程序,变成了熟练工,每天都是重复写一些没有任何新意的代码,这其实是中国软件人才最大浪费的地方,一些重复性工作变成了熟练程序员的主要工作,而这些,其实是完全可以避免的。

    复用性设计,模块化思维就是要程序员在完成任何一个功能模块或函数的时候,要多想一些,不要局限在完成当前任务的简单思路上,想想看该模块是否可以脱离这个系统存在,是否可以通过简单的修改参数的方式在其他系统和应用环境下直接引用,这样就能极大避免重复性的开发工作,如果一个软件研发单位和工作组能够在每一次研发过程中都考虑到这些问题,那么程序员就不会在重复性的工作中耽误太多时间,就会有更多时间和精力投入到创新的代码工作中去。

    一些好的程序模块代码,即便是70年代写成的,拿到现在放到一些系统里面作为功能模块都能适合的很好,而现在我看到的是,很多小公司软件一升级或改进就动辄全部代码重写,大部分重复性工作无谓的浪费了时间和精力。

    6:测试习惯
    作为一些商业化正规化的开发而言,专职的测试工程师是不可少的,但是并不是说有了专职的测试工程师程序员就可以不进行自测;软件研发作为一项工程而言,一个很重要的特点就是问题发现的越早,解决的代价就越低,程序员在每段代码,每个子模块完成后进行认真的测试,就可以尽量将一些潜在的问题最早的发现和解决,这样对整体系统建设的效率和可靠性就有了最大的保证。

    测试工作实际上需要考虑两方面,一方面是正常调用的测试,也就是看程序是否能在正常调用下完成基本功能,这是最基本的测试职责,可惜在很多公司这成了唯一的测试任务,实际上还差的远那;第二方面就是异常调用的测试,比如高压力负荷下的稳定性测试,用户潜在的异常输入情况下的测试,整体系统局部故障情况下该模块受影响状况的测试,频发的异常请求阻塞资源时的模块稳定测试等等。当然并不是程序员要对自己的每段代码都需要进行这种完整测试,但是程序员必须清醒认识自己的代码任务在整体项目中的地位和各种性能需求,有针对性的进行相关测试,并尽早发现和解决问题,当然这需要上面提到的需求理解能力。

    7:学习和总结的能力
    程序员是人才很容易被淘汰,很容易落伍的职业,因为一种技术可能仅仅在三两年内具有领先性,程序员如果想安身立命,就必须不断跟进新的技术,学习新的技能。

    善于学习,对于任何职业而言,都是前进所必需的动力,对于程序员,这种要求就更加高了。但是学习也要找对目标,一些小coding fans们,他们也津津乐道于他们的学习能力,一会学会了asp,一会儿学会了php,一会儿学会了jsp,他们把这个作为炫耀的资本,盲目的追逐一些肤浅的,表面的东西和名词,做网络程序不懂通讯传输协议,做应用程序不懂中断向量处理,这样的技术人员,不管掌握了多少所谓的新语言,永远不会有质的提高。

    善于总结,也是学习能力的一种体现,每次完成一个研发任务,完成一段代码,都应当有目的的跟踪该程序的应用状况和用户反馈,随时总结,找到自己的不足,这样逐步提高,一个程序员才可能成长起来。

    一个不具备成长性的程序员,即便眼前看是个高手,建议也不要选用,因为他落伍的时候马上就到了。

    具备以上全部素质的人,应当说是够格的程序员了,请注意以上的各种素质都不是由IQ决定的,也不是大学某些课本里可以学习到的,需要的仅仅是程序员对自己工作的认识,是一种意识上的问题。

  • 软件测试工作需掌握的Linux的快捷键和主要命令

    2008-06-25 16:17:42

    Linux基本的键盘输入快捷键和一些常用命令-
    <Ctrl><Alt><F1>
    切换到第一个文本终端。在Linux下你可以有多达六个不同的终端。这个命令的意思是:“同时按住<Ctrl>键和<Alt>键,然后按<F1>键,再释放所有的键”。

    <Ctrl><Alt><Fn> (n=1..6)

    切换到第n个文本终端。(你也可以使用不是很经常用到的命令chvt n 来实现,n指的是第n个文本终端)。在文本终端下(不是在X窗口),你也可以简单使用<ALT><Fn>来实现切换,不需要<CTRL>键。

    打印出你正在使用的终端名称,如果你希望知道终端的名字,可以使用命令fgconsole。

    <Ctrl><Alt><F7>

    切换到第一个图形用户界面(一般来说X-window在第七个终端)

    <Ctrl><Alt><Fn> (n=7到12)

    切换到第n个图形用户街面。根据缺省,第一个X-Window在第7个终端运行,从第8到第12什么也没有,当然你可以逐个启动这些图形用户界面。

    <Tab>

    (在文本终端下)可以使用TAB自动完成命令,或者显示所有的可选项。这个快捷键真的非常好用,经常使用你会发觉它可以节约你很多的时间。

    <ArrowUp>

    (在文本终端或者X窗口下)滚动和编辑以前输入的命令。按<ENTER>执行一个历史命令

    <ArrowDown>

    回滚

    <Shift><PgUp>

    滚动终端输出。对于登录提示也起作用,所以你可以使用它回滚启动信息。你显卡的内存大小决定你可以回滚多少内容

    <Shift><PgDown>

    回滚终端输出

    <Ctrl><Alt><+>

    (在X窗口下) 改变X服务器的屏幕解析率 (如果你设置X服务器有多个不同的屏幕解析率)。比如对于我的标准SVGA卡和显示器,在文件/etc/X11/XF86Config有以下的设置行: (从缺省开始,到可以支持的最大虚拟屏幕解析率)

    Modes "1024x768" "800x600" "640x480" "512x384" "480x300" "400x300" "1152x864"Z

    当然,首先我必须设置我的X服务器,可以使用using Xconfigurator, xf86config, 也可以手工编辑文件:/etc/X11/XF86Config。XFdrake (Mandrake使用图形用户界面进行配置 )。你也可以参考命令xvidtune和xvidgen。

    <Ctrl><Alt><->

    (在X窗口下)把X服务器的屏幕解析率修改到上一次的设置。

    <Ctrl><Alt><Esc>

    (在X窗口,KDE下)关闭我鼠标将要指向的窗口(鼠标的光标形状会有所改变)。同样的效果也可以使用命令xkill(在X终端上)来实现。当一个程序窗口被挂住的时候特别有用。

    <Ctrl><Alt><BkSpc>

    (在X窗口下) 终止当前的 X窗口服务。如果X窗口不能正常退出时可以使用。

    <Ctrl><Alt><Delete>

    (适用于文本终端下)关机和重新启动。这是一个在文本终端下的正常关机命令,千万不要按计算机上的reset键来重新关机和重新启动!

    <Ctrl>c

    终止当前进程(对于一般的小型文本模式的应用程序)

    <Ctrl>d

    (在一个空白的命令行上输入)退出当前的终端。参加下一个命令。

    <Ctrl>d

    给当前的进程送文件结束符合。不要按两次否则你会把自己退出系统。

    <Ctrl>s

    停止终端传输

    <Ctrl>q

    从新开始终端传输。如果你的终端突然莫名其妙的停止响应,可以参考上一条命令。

    <Ctrl>z

    把当前进程送到后台处理。

  • 网页设计基本常识

    2008-06-17 16:08:30

    . 什么是Web服务器?Web浏览器的作用是什么?简述浏览器打开文件的步骤。

      答:Web服务器是用于存储WWW文件并响应处理客户机请求的计算机。浏览器的作用在于解释并显示超文本文档,包括指向其他文档的引用(或指针),与其他HTTP服务器上非常相似,这些指针也称为链接。从一个超文本页上选择一个链接时,浏览器将请求送回支新的服务器,然后在客户端上显示另一个充满链接的页面。

      打开一个Web文件的基本步骤如下:

      A在浏览器中指定要访问的Web文件的URL.

      B浏览器将请求发给服务器。

      C服务器将靖求转递给指定URL处的服务器。

      D该服务器将文件送回到服务器上。

      E服务器将文件送回到客户端浏览器上。

      F浏览将文件显示在计算机屏幕上。

      2. IP地址与域名之间存在对应关系吗?如果存在,那么二者是怎样对应起来的?如果不存在,试讲述在Internet中是如何惟一地标识一个资源的位置的?

      答IP地址与域名存在着对应 的关系。IP地址上全球通用地址,在协议软件中IP地址由表及里2位二进制浸透表示,每八位为一组,以圆点“。”分隔,在面向用户的文档中,IP地址被直观地表示为四个以圆点滴隔开的十进制数,其中每个十进制浸透对就一个八位二进制数组(即一个字节),每个十进制数可取值0~255.IP地址理一种层次型地址,在概念上分为三个层次:主机、由主机构成起来也不方便。为了解决这个问题,同时也为了便于网络地址的分层管理各分配,自1984年起在互联网上采有了一种字符型的地址标识,这便是域名(Domain Name)。

      域名系统,域名标识了一个有户所属的机构、所使用的主机或节点机。域名的命名方式自然称为域名系统,域名必须ISO有关标准进行。

      同IP地址类似,域名采用层次型命名机制,域名由n级组成,各级之间以圆点分隔。

      域名是人们容易记忆的字符型号主要内容名,IP地址则是计算机容易处理的数值型主机名,两者均描述了主机在Internet中的地址,而且一一对应。域名系统实现了域名—IP地址映射。

      域名系统实质是一个公布式数据库,包括突出数据的标准格式,数据库查询方法,以及本地更新数据的标准方法

      域名系统将主机的信息管理公布与许多国家地区和组织,用户在自己的域名上更新所在域的信息,域名服务器则将这些信息传送给其他的域名服务器。另外,域名服务器能被几乎所有的计算机软件所有,包括电子邮件,远程终端,文件传输程序。

      3.图象处理工具主有哪几样应用?

      答 图象处理工具可对图象进行编辑,修饰,优化,图形文件格式转化等处理。

      A图形编辑包括制作业面中的字体,制作3D效果,建立透明GIF文件,插入背景,阴影,处理字体,箭头,徽标等业面元素,并能对图形进行剪辑,移动和旋转处理

      B图象修饰是指对网业中已有的图象加以认识和做其他的修改,包括调整图象亮度和对比度,采用变体,给黑白图象着等以改善网页中图象的质量

      C图象优化是指采用各种滤镜对已建立的图象进行色彩校正的优化处理。

      一般来说,图象处理工具包括公用图象处理工具,专用图象处理工具,网页制作软件自代图象处理工具

      4.为了满足爷面制作的目标,应该注意哪些问题?

      答 要注意以下几个问题

      A网页结构  网页结构要清晰,易于导航,思路和脉络要符合访问者的想法。可采取的措施有:采用框架结构表现主题,索影和正文;网页的大小一般控制在50KB以内;在网页的尾部放上联系方式,如E-MAIL,以方便访问者能建立联系,反馈必要的信息               B页面内容 一般情况下,网页都要以内容为主,不必过分的追求复杂的表现形式,但必须写好简介,要有特色,避免太空,泛泛而谈。页面本身要简单,结构复杂的网页不仅要花费很多的精力,而且由于超连接复杂,让浏览者阅读时也感觉困难

      C文字 在以内容为主的前提下,应当尽量把形式与内容结合起来。既不要把页面弄的花哨,也不呀只讲内容完全不讲究文字和图片的安排,要容易阅读。要注意:网页的标题要简洁,明确,能反映整个文档的内容;在文本叙述部分使用水平线分割不同的部分;对重点的文章和段落要使用强调字体表达

      D图形 设计好图形并合理使用能给网页增色。网页中插入的图形尽量要小,网页中图形要附加文字说明,使人在图形出来之前了解相关内容;不要为图形加太长的交互文本,也不要把所有的超连接放在图上;控制页面中的图的数量,不要滥用图象GIF

      5.什么是所见既所得的网页制作工具?什么是标记形网业制作工具?他们的优缺点?

      答 标记型网业制作工具既直接书写原代码。他的好处是用户可很方便的控制代码。由于都是自己书写,没有冗余部分,因此能非常好的把握整个HTML文件在浏览器中的表现;最大的缺点是用户必须非常熟悉HTML语言。

      可视化网页制作工具既所见既所得的方法制作网页,可以非常直观的对网页进行排版,往往使设计工作事半功倍。它不需用户对HTML标记熟悉,只要用户有好的创意,就能够作出符合用户需求的网页。但是它有个致命的缺点:难以精确的达到与浏览器完全一致的显示效果,而且它生成的代码也不能完全适应各种不同的情况,往往出现冗于度高,不如手工书写来得简洁。

      6.在学习网页制作时,可以从哪些方面来增强学习效果?

      答 A从了解HTML的基本标记开始。

      B选择自己认为顺手的工具,从第一个页面开始。

      C多访问他人网页,从中受到启发

      D深入分析成功的网站,网页。

      7. 网站设计的过程中,最中要的一个原则是什么?为什么?

      答:网站最重要的原则是创意。虽然网站的主要目的是传送给人们它的信息,但在传递信息的同时还把他的文化传递给获取信息的这些人。软件的掌握是短期就能速成的,而且新的软件成出不穷,功能越来越强大,但是使用这些软件必须要有良好的网站设计概念才能创造优秀的网站,这是网站制作的核心。网站的制作是按一定的步骤进行的,不同的网站设计着对网站有不同的见解和看法,但是有个共同观点:仅会输入文本,制作超级连接,排列图片不是真正意义上的网页制作,因为网页制作最重要的一个原则是创意。

      8. 什么是信息看版?有什么作用?

      答:信息看版是WEB站点中为访问者提供的各种最新的信息集合。通常位于首页上,或者在首页打开的同时通过脚本控制同时把信息看版打开。

      9. 简述网站的设计流程,并详细描述流程中每个步骤应该进行的工作

      答:设计流程为8个部分:A初始商讨。收集相关信息,确定包括站点目标用户,要发布的内容及开发WEB服务器平台。B构思。设计师根据收集的信息,开始构思站点的内容组织,栏目的设置,页面的基本结构等。C综合内容讨论。设计师先制作一些初始页面,将陪以文章的图样打印出来也顾客讨论,研究。D页面布局与导航。一旦顾客同意了这些内容,设计师就开始编制WEB页面,站点也编制到页面中,让顾客看到页面的处世效果。E图形制作。顾客同意了站点的外观设计,设计师就将制作图形,进行图形优化。F内容流程。利用各种网页技术,把客户的书面材料和相并进行修改。G测试。在站点被提交给拥护之前,开发人员要彻底测试每个WEB页面和连接并进行修补。H验收交付。一但开始验收工作,客户要对站点进行大量测试,找出排版错误的地方,进行修改。在作完了必要的工作后,站点可以对外宣传,开放了。

      10. 什么是站点的风格,典型的商业网站的风格有哪些?

      答:站点的风格是指整个网站所采取的结构布局,色调,文字,标志,图案等要素带给浏览者的关于该网站的印象。商业公司的风格主要表现在如下方面:

      A公司的会标或商标应出现在页面的最上方,尽可能作到色彩醒目,同时站用面积小。B可采用主题图形产品广告来突出公司形象和风格。C主要栏目一般才用图文并茂的超连接,要考虑主要栏目的图片,文字的色彩配合,主题图形相互寸托。D不要把主要栏目和次要栏目放在同一个页面显示。E商业网站一般都有固定的栏目页面。F建立站内收索引擎,方便浏览者在站内查找所需要的信息

      11.在组织网站目录结构是需要遵循哪些原则?

      答:A不要将所有文件放在根目录下面。B按栏目内容分别建立子目录。C在每个栏目下面都建立独立的IMAGES目录。D目录的层次不要太深。E切忌使用中文目录。F不要使用过长的目录。G尽量使用意义明确的目录

     12.究网站的连接结构意义何在?主要的网站结构有哪几种?

      答:网站的连接结构是指页面间相互连接的拓卜结构。他建立在木结构基础之上,但是可以跨越目录。形象的说,每个页面都是一个固定点,连接则是每2个固定点之间的连线。一个点可以和一个点连接,也可以和多个点连接。更重要的是这些点不是分布在一个平面上,而是存在于一个立体的空间。研究网站连接结构的根本目的在于,用最少的连接,使浏览最有效率。一般的建立网站的连接结构有树型和星型2种,在实际中,总是将2重结构相互混合起来,我们希望浏览者可以方便快捷的达到自己需要的页面,有能清晰的知道自己的位置。所以最好的方法就是首页和2级页面间用星型连接,2级和3级之间用树型连接结构。

      13. 什么是页面的重心?为什么要使页面的重心平衡?常用的有哪几种重心平衡方法?

      答:重心平衡既页面重心反映的是网页上各种元素分布的协调程度。任何一个图片或者文字,都在网页上占有一定的空间,作为一个模块,其本身就具有重心位置,当插入到空白网页后就会明显的改变整个网页的重心。重心的平衡代表网页必须对称布局,虽然对称的分布更容易的获得重心的平衡,但是对称分布往往使页面失去活力,因此非对称布局反而是更多网页的首选。一般情况下,重心平衡是指在左右重心的平衡。而上重下轻也是网页构图经常采用的方法。既对页面上下重心的平衡上要求不严。这是因为由于在浏览器的滚动时,显示的是整个页面,访问者一般不会注意。

      14. 什么是WEB安全色?什么是抖动?2者之间是否有联系?

      答:WEB安全色是由于浏览器在显示各种颜色时是有选择的。它只能选择其中的216色显示。无论是BLUE,RED,GREEN的颜色通道,他都是采用跳跃的显示方法进行颜色的编码,既它们都只能在00-FF之间取值。这些跳跃的色彩被称为WEB的安全色,意思是在任何浏览器上都能显示。抖动是由于浏览器不能显示所有的颜色,因此伪造了在调色板中不能显示的颜色,通过邻近的象素混合而产生在图象中实际并不存在的颜色,达到一种补偿的目的。抖动的图象有很多颗粒,图象显示粗糙。抖动是由于WEB安全色的限制产生的,抖动时使用的色彩范围是在WEB安全色内的。

      15. 简述在电脑中是如何处理颜色的?

      答:在计算机中,每一个bit(位)可以有1和0两种状态,如果对应颜色,可以有黑和白2种颜色。如果是2个bit,就有00,01,10,11四中状态,依次类推,若采用8bit来表示颜色,就有256种颜色。如果是24位,就有2 的24次方既16777216种。为了进行色彩的配比,在计算机中每种颜色对应着一个色彩通道,大调整每种通道的色彩分量时,最后得到的颜色就可以改变。对于常见的24位色彩用16进制表示就应该是XXXXXX共6个数字,前2个数字表示红色的颜色分量,后2个数字表示绿色通道的分量,最后的表示蓝色通道的分量。许多图象处理软件,都提供色彩的调配功能,通过输入3原色的数值分量来调配,也可以直接进行调配。

      16. 简述大色块构图法和抽象构图法的方法及相关思路。

      答:大色块构图法在网页制作中比较流行,这是因为首先在大色块构图时,可充分利用表格单元格的底色来形成大幅面的色块,而不需要制作如表格那么大的单色块图象,只要在色块的边缘用图象来拼接就可以做出立体效果来,这样经济且做出来的网页不大。其次大色块构图具有很强烈的视觉冲击,因为大色块集中,醒目。使用大色块要注意3点:冷暖色调在均匀使用时不宜靠近,纯度较同的颜色不宜放在一起,整个页面最好有个主色调。 与大小色块相对应的是抽象线条构图。抽象线条构图使用一些圆弧线,直线和短线段来代替以往的大色块。这些线条的搭配显示一种简洁爽朗的美感。这就是抽象构图法:仅仅凭借简单的线条形成网页。在抽象构图中,色彩一般使用统一色调,它对页面融合有好处,同时也便于突出中心图片。

      17. 网站设计中应该注意的几个方面?

      答:网站设计需要遵从一定的通用规则,必须按照一定的规划、想法来实施。网页设计的原则不仅体现在网页的风格、层次构思和网页的页面构思中,还包括更多更广的设计思想。网页设计不应该从设计者本身出发,而必须要从访问者的角度来思考问题。共有8个方面要注意:1;网站的设计目的决定设计方案:在设计一个网站之前,应当有强烈的目的性和针对性。2;浏览者的需求第一位:不论如何,必须要搞清楚浏览者需要什么。3;页面的有效性:在全局设计阶段,创作者应当在每一个页面的有效性与过载之间进行权衡。4;页面布局统一性:页面布局往往能显示一贯网站的统一性,如使用同样的背景,提供导航系统等。5;使用表格和适当的帧结构来设计网页:可以让用户在尽量少的“重载”页面的情况下浏览所需的内容,提高浏览效率。6;谨慎使用图片:保证页面下载的速度和浏览器的兼容性。7;充分体现平面设计意识:学好平面设计的一般技能是网页设计能不断提高的基础之一。8;减少Java Applet和其他多媒体的使用:应该谨慎使用。

      18. 比较GIF格式和JPEG格式的原理与各自的适用范围。

      答:如果是自己设计的线条简单。色彩种类比较少的图形,或者是著作透明图形,制作动画,那么就用GIF格式。GIF文件能做动画,且它的压缩算法是通过精简色彩集来实现的;如果需要在网页上放置一副照片,那么就用JPEG文件,因为JPEG的压缩算法对包含有复杂的颜色的图片很有效。在GIF中最多允许有256种格式,而JPEG没有这个限制,且可以显示所有的RGB颜色,既24位真彩色。而GIF只有8位表示,只能显示256色。 如果在使用颜色数目大于256色的照片时,就用JPEG格式,这样能显示所有的颜色,而颜色小于256色的图片就用GIF格式,这样才不会造成浪费。

      19.HTML文件的基本结构是怎样的?主要有哪些基本标记组成?

      答:HTML文件的第一行是标记<html>,其结束标记是</html>,它标明这个文本文件为HTML文档。每一个HTML文件都包含这个标记,即以<html>开头,以</html>结尾。

      <head>标记为文件头标记,其结束标记是</head>,在文件头标记中,还可以再加入其他标记,如<title>标记、<meta>标记等。

      <title>标记为标题标记,其结束标记为〈/titlle〉,其中的内容会显示在浏览器的标题栏中,标示该网页的主要内容。

      接下来是〈body〉标记,它的作用是标识文件主体,结束标记是〈/body〉。其中的内容是浏览器页面中显示的主体内容。

      HTML文件的内容有三大部分,即文件头标记,<head>……</head>和文件体标记<body>……</body>和一些注释。头标记和体标记的内容又由其他的标记和文本及注释组成。也就是说,一个HTML文件应具有下面的基本的结构:

      <html> HTML文件开始

      <head> 文件头开始

      文头内容

      </head>文件头结束

      <body> 文件体开始

      文件体内容

      </body> 文件体结束

      </html> HTML文件结束

      20.试举出三种基本的页面排版标记,并举一个例子包含这三种基本排版标记。

      答:页面排版标记有:<title>、<hx>、<br>、<pre>、<p>等。举例如下:

      (1)。标题标记〈title〉title标记是文件头中出现的标记,它只能出现在文件头中。title标记的格式为:〈title〉文件标题〈/title〉

      (2)。标题字体标记( <hx>)

      标记<hx>中的x表示1-6的数字标题字体标记有六种,分别为h1 h2 ……h6,用于表示文章中的各级标题的大小。标记号越小,标题越大。

      基本使用方法是:<hx>标题内容</hx>

      (3)。转行标记(<br>)

      转行标记的格式为:……<br>

      它的作用为强迫文字转行,所显示的格式并不会因为浏览器窗口大小的改变而改变。

      21.META标记有什么作用?应该如何使用?

      答:META标记是一个非常游泳的标记,主要提供的有三种功能:动态链接、动态排列文件、网页关键词。

      (1)动态链接

      对于一个网页,可以设置其经过一定的时间自动链接到另一一个网页或者另一个站点,这个功能可以由动态链接标记来实现,其格式为:<meta http-equiv=“refresh” content=“#;URL=文件名或网址”>其中:http-equiv=refresh 是指定具体内容,其中,#号代表延迟的时间,单位是秒;URL为要动态链接到文件名或网址。这个标记属于<head>……</head>之间的标记。

      (2)动态排列文件

      此标记的作用是,当浏览器窗口大小改变时,文字的排版亦会随窗口大小的大小改变而改变,让文字都显示在窗口中。标记格式为,<meta http-equiv=“content-type” content=“text/html;charset=GB2312”>其中,charset=GB2312是指对中文的动态排列通过GB2312码来做,也可以为BIG5、EN(English)等编码。这个标记也应该放在文件头<head>……</head>标记中。并且,有此标记之后,文件中的文字不应再出现<br>等排版控制标记。

      (3)网页关键词

      搜索引擎分为两大类,一类为完全人工登录,比如Tahooo!;另一类为使用机器人自动搜索,比如ALTAISTA.以机器人自动搜索的搜索引擎会包含更多的内容。机器人会搜索网页META标记中所设置的描述关键字,把它们加入到搜索数据库中,用来索引网页。因此设置META标记非常重要,在格式中,content列出了所设置的关键字,这其中的内容可以自行设置,其间用逗号隔开。基本格式如下:<meta name=“keywords” content=“Internet,business,game”>和<meta name=“descrīption” content=“xxxxxxxxxxxxxxxxxxxxx”>

     22.发展DHTML的目的在于 解决什么问题?客户端动态网页技术的优点体现在哪里?

      答:原来的静态网页要与客户端进交互时,由于客户端不能够进行处理,一切的计算工作都需要在服务器端进行处理。而且客互端在把网页下载后,网页不能够再改变,如果需要改变,还需要与服务器通信后再次从服务器端下载下来。这样,不仅加重了服务器的负担,而且加重了网络传输的负担,延长了网页显示时间。因此,DHTML应运而生。

      DHTML着眼于以更少而更快的页面下载提供更丰富的图形和数据。特别是它使得以来于客户的反馈来提供不同的信息变得更容易。他的功能比HTML更为强大,并在保持了一些熟悉的语言的同时扩展了HTML,DHTML的概念是以更少、风快捷的页面下载,提供更丰富多彩的图形和数据,但是,从实质上来说,DHTML作为浏览器自带的功能,实际上只是一种概念,并不属于一种专门技术。DHTML就是一种即使在网页下载进浏览器以后仍然能够随时变换更新网页内容排版样式以及动画等等的技术,它是一种通过各种技术的综合发展而得以实现的概念,主要包括Javascrīpt,VBSscrīpt,DOM,CSS等。

      DHTML有三个最主要的优点,即动态样式、动态内容和动态定位。动态样式能使网页制作者改变内容的外部特征而不强制用户再次下载全部内容。动态内容可以使开发人员改变显示在一页上的文本或图象,以便内容能够交互式地对用户的鼠标和键盘操作做出响应。动态定位则让页面制作者以自动方式或对用户的操作做出响应的方式转移页面上的文本和图象。

      23.DHTML是一项具体的技术还是一系列技术所支撑的概念?都包括哪些方面?每个部分相应支持哪些功能?

      答:DHTML主要由四种技术组成,各个部分的名称及功能如下:

      (1)HTML4.0: HTML4.0包括许多增强特性,如大表格的分段显示,带有固定标题的可以滚动的表格,以及对长表格打印的更好支持。对HTML格式的增强侧重于使这些格式更灵活。

      (2)CSS:CSS控制用XML或HTML语言编写的文档的显示、CSS可以使页面布局和格式比HTML更精确。

      (3)DOM:文档对象模型为 HTML文档定义了一个与平台无关的程序接口。使用该接口可以控制文档的内容、结构和样式,Web开发人员借助DOM可以在其Web页中引入动态和交互式内容,而不必依赖于Web服务器来提供新的内容或改变现有内容的显示方式。

      (4)脚本语言:目前广为流行的Javascrīpt是由Netscape公司开发的一种脚本语言,其结构简单,使用方便,易学易懂。它的代码可以直接嵌入HTML文档之中,无需编译就可以支持Javascrīpt的浏览器中解释运行。通过使用Javascrīpt可以大大加强Web页的交互性。scrīpt可以使Web上显示的文本信息动起来或是加入一些动画,从而十Web页看上去活泼诱人。另外,一种脚本语言是微软公司开发的VBscrīpt,但是很多浏览器都不支持该脚本语言

      24.Javascrīpt主要可以实现什么功能?主要的特征元素包括哪些?

      答:Javascrīpt具有事件与事件处理句柄、变量与常量、表达式与运算符、函数、数祖、对象等各种元素,以及条件、循环、对象等控制语句。正是这些元素能以分别完成各种不同的任务,而使Javascrīpt成为功能强大的脚本语言。特征元素列举如下:

      (1)事件处理句柄

      (2)函数

      (3)对象

      25.从性能上说,Javascrīpt和Java以及Java Applet之间的差异体现在哪里?

      答:由于在机制上与三者完全不一样,所以它们之间也存在性能上的差异。主要体现在以下几个方面:

      (1)Javascrīpt的本质是解释的。一般说来,解释执行的代码比编译执行的代码来得慢。然而,在实际应用中,Javascrīpt脚本反而常比同样功能的Java程序快,比如滚动文本,这是因为Java程序实际上是运行在Java虚拟机上的,而Java虚拟机的效率比较低。

      (2)Javascrīpt实现了SRC属性。通过SRC属性可将脚本从HTML文档中分离出来,成为独立的文件,扩展名为js,可以方便的重复使用脚本。

      (3)Javascrīpt代码能方便的修改,并立即在浏览器中看到修改的结果。比处理Java代码的编辑、编译、上载、查看过程要快得多,因此开发周期比Java程序短。

      (4)Javascrīpt能有效的与DOM结合控制浏览器的行为,能方便的使用插件、浏览器事件、窗体等技术,以实现用户与网页的交互。

      (5)由于Javascrīpt代码置于HTML文档中,这样,Javascrīpt代码便暴露在众人面前。源代码存在安全问题。

      (6)虽然Javascrīpt的功能非常强大,但是它在处理非常复杂的应用时就被其自身机制的局限性所限制,比如股票站点的实时行情显示这类需要在用户、浏览器、服务器三者之间进行复杂的通信、交互的应用,如果使用Javascrīpt来实现几乎是不可能的,必须通过服务器端程序、客户端嵌入式程序等各个方面协同工作来完成这样复杂的工作。

      26. CSS都有那些基本的规则?具体是如何使用的?

      答:样式的基本规则是这样的:selector {property:value}对于单一选择符的复合样式声明应该用分号隔开:selector {property:value;property:value2;……}  其中,selector :也称选择符、选择器。可以分为3类,HEML标记中的标记(tag),class,ID.Property:就是希望要修改的属性。 Value:希望赋予property的值。通过CSS我们可以作到不需要逐个修改页面中的标记属性,而直接使用CSS进行定义来修改大量的页面效果,这对页面的风格统一化有很大的作用,而且能减轻网页的维护工作,提高网页维护工作的质量。

      27. 层叠样式表中的层叠的意义体现在何处?如何在HTML上引用CSS?并比较各自的优缺点。

      答:层叠样式表中的层叠意义在于如果同一个WEB文档中可以有多个样式单存在。这些样式单根据所在的位置,拥有不同的优先级,优先级最高,就会被最后在显示时采用。从样式单插入的形式来看分为3种:内联式样式单它利于现有的HTML标记,把特殊的标记加入到那些由标记控制的信息中。嵌入式样式单和scrīpt类式,嵌入到HTML的头文件中去,使用<style></style>标记装载。外部式样式单是一种保存在外部的样式单文件。外部文件以。CSS为扩展名。外部样式单的优点在于可以统一整个网站的所有网页的样式,有利于站点的维护。而嵌入式样式单的作用在于统一整个网页的样式,只需要改动某个样式定义,整个页面内的所有相应位置均改变,有利于整个页面内部的样式。内联式样式单的作用在于简化了HTML标记的属性,直接通过CSS控制显示样式,是页面的效果更加丰富。

      28. CSS中都可以使用哪些单位?什么是CSS中的单位继承关系?

      答:在样式单中,属性的单位多为长度单位,包括PX像素,PT磅,EM(一种排版单位,1EM=12PT),MM毫米,CM厘米,PC(1PC=12PT),IN英寸,这些单位可以用整数表示,也可以用实数表示,并且元素中对数值还有继承的关系。有的单位可以负值,如MARGIN,可以达到一些特殊的效果,如元素之间的从叠。另外还有其他的一些单位如角度单位DEG度,GRAD梯度,RAD弧度,频率的单位是HZ和KHZ.

      29. 什么是选择符?都有哪几种选择符?比较各种选择符的优缺点。

      答:选择符的作用在于定义CSS的名称,以便引用,它的作用就是定义函数的名称一样。在CSS中主要有3种选择符,他们分别针对不同的要求而设定,而各自的定义方式也不同。A超文本标记选择符,任何HTML元素都可以是一个CSS选择符,选择符仅仅是指向需要特别样式的元素。类选择符,单一个选择符能有不同的类,因而允许同一元素有不同的样式。ID选择符对于页面内所有的标记都可以定义一个ID,在CSS中的选择符可以根据ID个别的定义每个元素的样式属性,这种选择要尽量少,因为它具有一定的局限性。

      30. CSS的失效发生在什么情况下?如何避免这种情况?

      答:样式表的目的在于允许网页制作者去改变网页的显示效果,而不是完全代替HTML进行页面排版,正因为这个原因,完全依赖样式表的网页开发人员会发现他们的网页在某时对部分重要的用户来说不能正常的阅读。这些问题不仅仅是在使用CSS时因该考虑。当使用其他一些需要特定环境才能实现的效果时也要考虑,如FLASH和JAVAscrīpt,如果用户没有FLASH插件,FLASH就不能播放。

      31. RONTPAGE2000有哪些新功能与特点?

      答:RONTPAGE2000是能够快速而专业的建立和管理望站的工具。RONTPAGE2000保留和发展了98的优秀功能,并增加了许多新的功能。A更容易建立专业,美观的网站。B RONTPAGE2000不仅可以用来制作网页,更可以用来建设和维护网站,方便的检查,更新。C RONTPAGE2000比其他的OFFICE组建的整和性更加提高,打开和运行的速度更快,并拥有更方便的数据管理。D使用主页。E能用图形的方式展示一个完整的WEB页面,也可以向一个完整的WEB站点引入、引出HTML文件,且可以维护站点内的超连接的正确性。F能自动创建WEB站点的文本索引,通过RONTPAGE提供的WEBBOT搜索组建查找索引,可无须编程进行站点内的全文检索。G加强了数据库访问能力。

      32. RONTPAGE2000主要有哪些模块组成?

      答:站点模块,站点管理模块,网页制作模块,站点发布模块,站点维护模块。

      33. 什么是站点?虚拟目录和实际目录是一回时吗?描述2者的对应关系。

      答:站点是一个各种媒体的集合的抽象概念,在物理上它可能是一个有许多子目录的大目录,但是站点的许多媒体可能分布在其他各个不同的物理位置上。WEB通常以站点为单位来组织发布信息。虚拟目录就是为了组织不同的物理信息文件而设立的概念。在WEB站点系统中,虚拟目录被称为文件系统物理目录的别名。通过虚拟目录可以把分布在不同位置的资源组合起来,创建一个WEB站点。一般来说,WEB站点是建立在一个物理目录下的。

     34. 为什么要作好网站栏目设计?不好的设计可能带来什么后果?在网站栏目主要根据哪些原则进行划分?

      答:A确定栏目和版块。B确定网站的目录结构和连接结构。C确定网站的整体风格创意设计。建立完整的网站在栏目设计上要考虑以下方面:A紧扣站点主题B设计一个最近更新或网站指南栏目C设计一个可以双向交流的栏目D设一个下载或常见问题交流栏目E其他辅助内容。总结以上几点,划分栏目时需要注意:A尽可能删除与主题无关的东西B将网站最有价值的东西列在栏目上C方便浏览者查询。

      35. 网络广告计算方法有哪些指标?其概念和计算方法如何?

      答:有2种方法:CPM计费方法,为每千播放、下载次数成本。CPC计费,每千次点击率为计费模式。

      36. WEB服务器是如何工作的?

      答:WEB由客户机与服务器组成。客户是简单由TCP/IP加上WEB浏览器组成,WEB服务器由HTTPD加后台数据库组成。客户的浏览器和服务器用TCP/IP的HTTP建立连接,使得客户与服务器二者的超媒体传输变的容易。所有的WEB服务器统一使用TCP/IP,统一分配IP.使得客户和服务器的逻辑连接变成简单的点对点连接。客户机和服务器通过HTTP彼此传送信息来工作。几乎所有的以网页形式表现的HTML文件,都存储在专门的WEB服务器上,WEB服务器是一种在互联网上根据设定而采用的HTTP协议的计算机。它允许浏览器与WEB进行相互通信及连接转换。

      37. 如何选择虚拟主机?

      答:使用虚拟主机的目的是降低WEB成本,虚拟主机的评价标准主要有:A服务器的放置位置。B主机与网络连接的速度。C主机所运行的操作系统。D磁盘的空间大小。Ee-mail信箱的大小。F是否能够使用数据库。G是否支持微软的FRONTPAGE.H是否支持加密传输。

      38. 网页和WEB服务器之间的关系如何?通常WEB服务器可以通过哪几种方式获得?并对各个方案进行比较。

      答:要想创建并在互连网上发布网站,必须通过WEB来实现。实际上,可以用任何连接到互联网上的主机作为WEB服务器。一个服务器上有一个或多个站点。当公司有一定量的业务时,可以考虑主机托管的方式进行信息发布。而小公司可以考虑采用虚拟服务器,这样成本相对低一些。

      39. LOGO和BANNER是一回事吗?2者的区别在哪里?

      答:前者比较小,是站点的标志图案,主要用于网站间的友情链接。BANNER是指站点的旗帜广告,通常用于网站上的广告宣传。

      40. 站点推广主要是从哪几个方面来工作的?

      答:A传统的推广方式:公司印刷品、报刊杂志、户外广告。B搜索引擎。C网络广告交换。D邮件列表服务。E BBS讨论组的宣传。

      41. 结合自己的理解,谈谈XML能够解决的问题。

      答:HTML和XML都是用一对互相匹配的起始和结束标记来标记信息。他们的差别是HTML描述数据的显示方式,而XML描述的是数据的本身。拥护可以根据需要定义任何一种标记来描述文件的数据元素。他将改变浏览器显示,组织,搜寻信息的方式,而且克服了HTML连接容易断开的缺点,他的目的就是要通过标记来精确的表现信息的各种含义,能让不同的应用系统理解相同的意义。

      42. “结构良好”的规则是什么?什么样的XML文件才能满足。

      答:结构良好的规则是指:XML文件的结构是按其标记集的语法规则进行控制的。有一些一般规则应用于所有XML文件以确定文件是否结构良好。结构良好的文件至少要符合以下规则:文件的第一行必须是XML文档说明;文件必须包含一个元素;开始标记必须和结束标记配套使用;文件必须包括唯一的打开和关闭标记,文件的其他标记都必须包含在其中;标记之间不能从叠。

      43. 列举一个简单的XML文件,简述这个XML文件的基本结构。

      答:以下面的XML文件为例:

      <?xml version=“1.0” standalone=“yes”>

      <state stateid=“MN”>

      <city cityid=“12”>

      <name>johnson</name>

      <population>5000</population>

      </city>

      <city cityid=“15”>

      <name>pineville</name>

      < population >60000</ population >

      </city>

      <city cityid=“20”>

      <name>lake bell</name>

      < population >20</ population >

      </city>

      </state>

      44. 简单比较XML与HTML,分析2者的优缺点。

      答:XML诞生是在HTML遇到不可克服的困难后。XML有利于信息的发布和结构的组织化,使数据搜索更有效。XML可以使用URL别名是WEB维护更方便,也更稳定, XML可以使用数字签名使WEB应用更广阔拓展到安全领域。可认为未来的书写工具一定是XML.虽然HTML的格式化非常有用,但是XML却可重复使用页面内容。增强了搜索能力。同时,XML使用不仅仅限于WEB上。

      45. XML有哪些应用?举例说明。

      答:XML/EDI电子数据交换。EDI是用电子技术代替基于纸张的操作手段,用于公司间的单据交换,XML丰富的语言格式可以用来描述不同类的单据。安全保密措施好,可以加密,附上数字签名。  专用标记符号语言,目前开发的CML和MATH ML是XML应用于描述化学和数学公式的标记语言。CML可以描述分子与晶体结构,化合物,光谱等,MATH ML可将数字公式精确的显示在浏览器上。   频道定义格式CDF.它是微软在IE4.0上使用的XML数据格式,描述活动通道的内容和桌面部件。指明通道的信息及其更新情况。CDF使不同的平台的互操作成为可能。使WEB发布者可以控制推(PUSH)技术。互不兼容的平台可以获得相同的WEB内容

  • 网页打开慢的原因及解决办法

    2008-06-17 16:02:05

    影响网页打开速度的因素主要有如下几方面:
    1、网络防火墙的设置不允许多线程访问,例如目前WinXPSP2就对此默认做了限制,使用多线程下载工具就受到了极大限制,BT、迅雷都是如此。因此,同时打开过多页面也会出现打开网页速度慢的问题。
    2、系统有病毒,尤其是蠕虫类病毒,严重消耗系统资源,打不开页面,甚至死机。
    3、本地网络速度太慢,过多台电脑共享上网,或共享上网用户中有大量下载时也会出现打开网页速度慢的问题。
    4、使用的浏览器有BUG,例如多窗口浏览器的某些测试版也会出现打开网页速度慢的问题。
    5、访问的网站负荷太重,带宽相对太窄,程序设计不合理,也会出现打开网页速度慢的问题。
    6、用户和网站处于不同网段,例如电信用户与网通网站之间的访问,也会出现打开网页速度慢的问题。
    7、网络中间设备问题,线路老化、虚接、路由器故障等。
    8、是否和系统漏洞有关,也不好说,冲击波等病毒就是通过漏洞传播并导致系统缓慢甚至瘫痪的。

    解决的办法有:
    1、到新浪助手里,用IE强力修复,马上你就可以看到效果了。要不就是你本身的网速就慢。
    2、按下开始-运行,输入gpedit.msc,弹出组策略窗口,先选左边的计算机配置-管理模块-网络-QOS数据包调度程序,再选右边的限制可保留带宽上点右键,选择属性,在弹出窗口的设置中选“已启用”,将“带宽限制”改为0%,这样可以加快下载速度。网页打开慢与机器配置也有一定的关系,巧妙设置一下某些机关,也能改善机器运行速度、提高网页访问速度。下面再推荐一些可行的综合方法:


    一、清理磁盘和整理磁盘碎片。
    1、在我的电脑窗口,右击要清理的盘符—“属性”—“清理磁盘”--勾选要删除的文件--确定--是。
    2、清除临时文件,开始—运行—输入 %temp% --确定。3、用优化大师或超级兔子清理注册表和垃圾文件。
    4、关闭一些启动程序, 开始-运行-msconfig---启动 ,除杀毒软件、输入法外一般的程序都可以关掉。
    5、删除不用的程序软件。
    6、整理磁盘碎片--开始 --所有程序--附件--系统工具--磁盘碎片整理程序--选定C--分析--碎片整理。
    二、用优化大师或超级兔子优化你的计算机 ,再挑选以下办法进行再优化。
    1、禁用闲置的IDE通道
    右键点击“我的电脑-属性”,然后点击“硬件”接着点击“设备管理器”,在其中打开“IDE ATA/PATA控制器”然后分别进入主要和次要IDE通道,选择“高级设置”,在这里找到“当前传送模式”为“不适用”的一项,将此项的“设备类型”设置为“无”。
    2、优化视觉效果
    右键单击“我的电脑”--“属性”—“高级”,在“性能”栏中,点击“设置”--“视觉效果”,调整为最佳性能,或只保留一些必要的项目。
    3、启动和故障恢复
    "我的电脑"--"属性"--"高级"--"启动和故障修复"中点击“设置”,去掉"将事件写入系统日志","发送管理警报","自动重新启动"选项;将"写入调试信息"设置为"无";点击"编辑",在弹出记事本文件中:
    [Operating Systems] timeout=30 把 30 秒改为 0 秒。
    4、禁用错误报告
    "我的电脑"--"属性”--"高级”--点"错误报告”,点选“禁用错误汇报”,勾选"但在发生严重错误时通知我”--确定。
    5、设置系统还原
    单击“开始”--“所有程序”--“附件”--“系统工具”—“系统还原”,在系统还原界面,去掉“在所有驱动器上关闭系统工程还原”前边的勾,在“可用的驱动器”区中,选系统盘所在的分区,单击“设置”进入“系统还原设置”窗口,将“要使用的磁盘空间”调到5%或更小,“确定”返回,按上述方法将其它分区设禁用。
    6、关闭自动更新
    关闭自动更新具体操作为:右键单击“我的电脑”--“属性”--“自动更新”,在“通知设置”一栏选择“关闭自动更新。选出“我将手动更新计算机”一项。
    7、关闭远程桌面
    右键单击“我的电脑”--“属性”--“远程”,把“远程桌面”里的“允许用户远程连接到这台计算机”勾去掉。
    8、禁用休眠功能
    单击“开始”--“控制面板”--“电源管理”--“休眠”,将“启用休眠”前的勾去掉。
    9、关闭“Internet时间同步”功能
    依次单击“开始”--“控制面板”--“日期、时间、语言和区域选项”,然后单击“Internet时间”,取消“自动与Internet时间服务同步”前的勾。

     

Open Toolbar