给您一些建议

  一、 有关ASP页面及代码的优化
1.尽量用!--#INCLUDE FILE指令替代框架结构。
以前比较流行的一种设计模式就是使用一个框架(FRAME)放置网站的目录结构,在另外的框架中显示内容,这样的设计思路是必不可少的,但却会影响到网站性能。在具体实现方式上,完全可使用!--#INCLUDE FILE指令来设计一个导航条,至于INCLUDE的使用,早在讲座一中就已经举例说明。

2.尽量不要让来访者在毫无变化的等待中消磨时光。
不要使用这样的方式,先进行处理,然后再将处理结果输出到页面,造成在处理的这段时间内,客户端页面没有任何变化。一个再有耐心的人也会因此而感到无比懊恼,应该尽量采用边处理,边输出的方式。其实我们在讲座八中介绍的分页显示技术就是这个道理,下面再举一个例子。
代码一(先处理后显示):
<TABLE WIDTH=”100”>
<% WHILE NOT RS.EOF %>
<TR>
<TD><%=RS(“NAME”)%></TD>
<TD><%=RS(“EMAIL”)%></TD>
</TR>
<% RS.MOVENEXT
WEND %>
</TABLE>
代码二(边处理边显示,处理一条,显示一条):
<% WHILE NOT RS.EOF %>
<TABLE WIDTH=”100” BORDER=0>
<TR>
<TD><%=RS(“NAME”)%></TD>
<TD><%=RS(“NAME”)%></TD>
</TR>
</TABLE>
<% RS.MOVENEXT
WEND %>

3.避免使用SESSION变量,尤其是在页面之间使用SESSION变量。
   使用会话变量会降低效率,原因在于不仅需要为每位访问者创建一个变量,而且直到访问者离开20分钟后(默认TIMEOUT设置),会话变量所占内存才会被释放。

4.不要盲目使用数据库。
初学者往往对数据库有所心得之后,动不动便使用数据库,一来可以温故,二来展示一下自己的数据库技术。我的建议是可以用别的方法时最好少使用数据库,访问数据库总要消耗服务器资源。例如你可以使用文本文件,此外,对一些不大改变而又经常使用的数据,可使用APPLICATION对象将数据存放在数组变量中,从内存中获取数据要比从数据库中快得多。

5.使用OPTION EXPLICIT强制声明变量。这可以提高ASP脚本执行效率,并且减少脚本出错的可能性,应该养成一个良好的习惯。

6.尽可能使用用DIM定义的局部变量。访问局部变量比访问全局变量或未声明的变量要快得多。

7.HTML代码和ASP代码最好不要频繁交叉,尽量使ASP代码或HTML代码连成片,以提升脚本运行效率(这跟打游戏的道理差不多)。
如果你是在代码中的好几个地方用<%=...%>格式书写输出结果,那么考虑一下把这些结果合到一块,用一个RESPONSE.WRITE语句写出来,如讲座二中的例WUF9.ASP。不要把HTML代码和VBSCRIPT脚本散布得太开,尽量写成成块的HTML和VBSCRIPT脚本。

8.适当使用绝对路径
如果可能的话尽量避免使用相对路径,而使用绝对路径。使用相对路径将需要IIS返回当前服务器路径,这就意味着对IIS的特殊请求造成执行速度低下。不过话说回来,慢是慢了点,然而使用相对路径可以大大增强程序的灵活性和可移植性,关键在于恰当的处理这对矛盾。

9.ASP脚本性能测试
你可以使用一些工具软件测试你的ASP脚本执行所花时间,尤其是觉得该脚本有问题时。这里提供几个,具体用法请看帮助。
(1) MICROSOFT的INETMONITOR工具:用来监控和测试整个网站的处理能力。下载地址:HTTP://WWW.MICROSOFT.COM/SITESERVER/SITE/DEPLOYADMIN/INETMONITOR.HTM。
(2) MICROSOFT的WEB CAPACITY ANALYSISTOOL(WCAT)。包含在MICROSOFT BACKOFFICE RESOURCE KIT光盘中,或者也可以去MICROSOFT网站下载。
(3) SOFTWING的ASP PROFILING COMPONENT,下载地址:HTTP://WWW.SOFTWING.COM/IISDEV/PROFILER/。

二、 有关数据库性能的优化
1.用直接将数据库绑定到OLE DB的驱动程序,而不通过ODBC。关于这一点,详见讲座六。

2.尽量使用系统默认的游标(CURSORTYPE)和上锁(LOCKTYPE)类型,尤其要避免使用动态游标。

3.适当使用存储过程。存储过程比查询字符串的效率高,使用起来要方便得多,好处多多。

4.及时释放资源,例如尽早的释放对象、关闭连接等。

5.数据库性能测试
(1) 测试SQL查询的速度,可以使用MICROSOFT ISQL/W(MICROSOFT SQL SERVER6.5)或MICROSOFT QUERY ANALYZER(MICROSOFT SQL SERVER7.0),它们可显示执行的每个步骤及所需时间。
(2) MICROSOFT SQL SERVER7.0的PROFILER,可以跟踪对数据库服务器上执行的查询的监控。例如,可以跟踪记录运行最慢的查询或是最经常导致数据库死锁的查询。

三、 另外几个问题
1.其他可选的ASP开发平台
此前我们所讲的ASP脚本均是在MICROSOFT系列平台上创建的,除此以外,你还可以选择CHILI!ASP来运行ASP,它的突出优点是在WINDOWS NT和UNIX平台上均可以使用。主页地址:HTTP://WWW.CHILISOFT.COM/。

2.关于<% @LANGUAGE=VBSCRIPT%>
此前我们所遇到的所有ASP脚本,开头第一行代码基本上都是<% @LANGUAGE = VBSCRIPT%>,这表明这一页的ASP脚本所使用的脚本语言为VBSCRIPT,实际上,在ASP中还可以使用JSCRIPT、PERLSCRIPT等其他脚本语言。
在ASP中,你可以设定整个WEB站点使用一种脚本语言(如VBSCRIPT,这也是IIS的缺省设置),而对某一个特定页面使用另一种脚本语言(如JSCRIPT),甚至于对某一个页面的某一个函数使用另一种脚本语言。下面我们举一个实例:
(1) 如何设定整个WEB站点所使用的脚本语言。
运行ISM(INTERNET SERVICE MANAGER)→右键击网站名,选择PROPERTIES→选择HOME DIRECTORY选项卡→单击CONFIGURATION按钮→选择APPLICATION CONFIGURATION对话框中的APP OPTIONS选项卡→在DEFAULT ASP LANGUAGE文本框中输入VBSCRIPT或JSCRIPT即可。
(2) 例程WUF99.ASP
<% @LANGUAGE = PERLSCRIPT %>
<HTML>
<HEAD><TITLE>BYE</TITLE></HEAD>
<BODY>
<%
  $RESPONSE->WRITE(
    SPRINTF( "IP ADDRESS = %S",
      $REQUEST->SERVERVARIABLES(
        "REMOTE_ADDR" )->ITEM ) );
%>

<SCRIPT LANGUAGE="JSCRIPT" RUNAT="SERVER">
FUNCTION SAYBYE()
{
RESPONSE.WRITE("再见!")
}
</SCRIPT>

<SCRIPT LANGUAGE="VBSCRIPT" RUNAT="SERVER">
FOR I=1 TO 3
SAYBYE()
NEXT
</SCRIPT>

</BODY>
</HTML>
注意:你可以在ASP中自由的使用VBSRIPT或JSCRIPT,因为MICROSOFT支持这两种(IE支持NETSCAPE的JAVASCRIPT,并将其发展为JSCRIPT,而NETSCAPE却不支持VBSCRIPT,这恐怕也是NETSCAPE先发后至,MICROSOFT官司缠身的原因之一),但是要使用PERLSCRIPT,必须另外安装PERL脚本语言环境。推荐使用ACTIVEPERL,在WINDOWS NT上安装非常方便,下载地址:HTTP://WWW.NEWHUA.COM.CN/ACTIVEPERL.HTM。

3.一个不错的ASP设计实例
网上有很多ASP的实例,主要集中在留言本、聊天室、新闻发布和BBS等,这里向大家推荐一个用ASP设计的BBS系统FREE BBS,下载地址为:HTTP://FREE_BBS.SOIM.NET/。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
应用背景为变电站电力巡检,基于YOLO v4算法模型对常见电力巡检目标进行检测,并充分利用Ascend310提供的DVPP等硬件支持能力来完成流媒体的传输、处理等任务,并对系统性能做出一定的优化。.zip深度学习是机器学习的一个子领域,它基于人工神经网络的研究,特别是利用多层次的神经网络来进行学习和模式识别。深度学习模型能够学习数据的高层次特征,这些特征对于图像和语音识别、自然语言处理、医学图像分析等应用至关重要。以下是深度学习的一些关键概念和组成部分: 1. **神经网络(Neural Networks)**:深度学习的基础是人工神经网络,它是由多个层组成的网络结构,包括输入层、隐藏层和输出层。每个层由多个神经元组成,神经元之间通过权重连接。 2. **前馈神经网络(Feedforward Neural Networks)**:这是最常见的神经网络类型,信息从输入层流向隐藏层,最终到达输出层。 3. **卷积神经网络(Convolutional Neural Networks, CNNs)**:这种网络特别适合处理具有网格结构的数据,如图像。它们使用卷积层来提取图像的特征。 4. **循环神经网络(Recurrent Neural Networks, RNNs)**:这种网络能够处理序列数据,如时间序列或自然语言,因为它们具有记忆功能,能够捕捉数据中的时间依赖性。 5. **长短期记忆网络(Long Short-Term Memory, LSTM)**:LSTM 是一种特殊的 RNN,它能够学习长期依赖关系,非常适合复杂的序列预测任务。 6. **生成对抗网络(Generative Adversarial Networks, GANs)**:由两个网络组成,一个生成器和一个判别器,它们相互竞争,生成器生成数据,判别器评估数据的真实性。 7. **深度学习框架**:如 TensorFlow、Keras、PyTorch 等,这些框架提供了构建、训练和部署深度学习模型的工具和库。 8. **激活函数(Activation Functions)**:如 ReLU、Sigmoid、Tanh 等,它们在神经网络中用于添加非线性,使得网络能够学习复杂的函数。 9. **损失函数(Loss Functions)**:用于评估模型的预测与真实值之间的差异,常见的损失函数包括均方误差(MSE)、交叉熵(Cross-Entropy)等。 10. **优化算法(Optimization Algorithms)**:如梯度下降(Gradient Descent)、随机梯度下降(SGD)、Adam 等,用于更新网络权重,以最小化损失函数。 11. **正则化(Regularization)**:技术如 Dropout、L1/L2 正则化等,用于防止模型过拟合。 12. **迁移学习(Transfer Learning)**:利用在一个任务上训练好的模型来提高另一个相关任务的性能。 深度学习在许多领域都取得了显著的成就,但它也面临着一些挑战,如对大量数据的依赖、模型的解释性差、计算资源消耗大等。研究人员正在不断探索新的方法来解决这些问题。
深度学习是机器学习的一个子领域,它基于人工神经网络的研究,特别是利用多层次的神经网络来进行学习和模式识别。深度学习模型能够学习数据的高层次特征,这些特征对于图像和语音识别、自然语言处理、医学图像分析等应用至关重要。以下是深度学习的一些关键概念和组成部分: 1. **神经网络(Neural Networks)**:深度学习的基础是人工神经网络,它是由多个层组成的网络结构,包括输入层、隐藏层和输出层。每个层由多个神经元组成,神经元之间通过权重连接。 2. **前馈神经网络(Feedforward Neural Networks)**:这是最常见的神经网络类型,信息从输入层流向隐藏层,最终到达输出层。 3. **卷积神经网络(Convolutional Neural Networks, CNNs)**:这种网络特别适合处理具有网格结构的数据,如图像。它们使用卷积层来提取图像的特征。 4. **循环神经网络(Recurrent Neural Networks, RNNs)**:这种网络能够处理序列数据,如时间序列或自然语言,因为它们具有记忆功能,能够捕捉数据中的时间依赖性。 5. **长短期记忆网络(Long Short-Term Memory, LSTM)**:LSTM 是一种特殊的 RNN,它能够学习长期依赖关系,非常适合复杂的序列预测任务。 6. **生成对抗网络(Generative Adversarial Networks, GANs)**:由两个网络组成,一个生成器和一个判别器,它们相互竞争,生成器生成数据,判别器评估数据的真实性。 7. **深度学习框架**:如 TensorFlow、Keras、PyTorch 等,这些框架提供了构建、训练和部署深度学习模型的工具和库。 8. **激活函数(Activation Functions)**:如 ReLU、Sigmoid、Tanh 等,它们在神经网络中用于添加非线性,使得网络能够学习复杂的函数。 9. **损失函数(Loss Functions)**:用于评估模型的预测与真实值之间的差异,常见的损失函数包括均方误差(MSE)、交叉熵(Cross-Entropy)等。 10. **优化算法(Optimization Algorithms)**:如梯度下降(Gradient Descent)、随机梯度下降(SGD)、Adam 等,用于更新网络权重,以最小化损失函数。 11. **正则化(Regularization)**:技术如 Dropout、L1/L2 正则化等,用于防止模型过拟合。 12. **迁移学习(Transfer Learning)**:利用在一个任务上训练好的模型来提高另一个相关任务的性能。 深度学习在许多领域都取得了显著的成就,但它也面临着一些挑战,如对大量数据的依赖、模型的解释性差、计算资源消耗大等。研究人员正在不断探索新的方法来解决这些问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值