ASP是什么协议,ASP定义,ASP开发准则是什么

ASP是什么协议,ASP定义,ASP开发准则是什么

应用服务器现在或最终将由Web服务器使用,Web服务器通常是一台运行ASP页面的IIS计算机。ASP是你的对象的唯一客户端。它带来了特殊的线程和安全考虑。本文介绍了ASP的开发标准,一起来看看吧。

尽管许多使用ASP的网站根本不使用组件,但本文假设ASP是互联网客户端和组件之间的桥梁。

ASP和组件之间的划分服务

ASP最常用于在服务器上为客户端创建HTML或XML文件,所以我们主要讨论这种使用方案。这就引出了一个普遍的问题。如果ASP页面在服务器上,它们是业务层的一部分吗?在组件领域,答案通常是否定的。尽管ASP确实运行在服务器上,并且可能与应用服务器在同一个空间,但这并不使它成为业务逻辑的一部分。

随着用户界面工具的发展或更多的企业对企业解决方案的启用,这种清晰的区分将会带来巨大的回报。

说到这里,让我们看看划分业务层和表示层的一些最重要的标准:

将UI代码与业务逻辑分开。这包括编写与UI耦合的代码,比如使用ASP内部组件的MTS对象,这样就可以与业务逻辑代码分开,就像在不同的DLL中一样。

将事务与ASP页面分开。Transaction ASP在某些情况下非常好,但是组件和多层应用会改变这种情况。组件不应该依赖客户端层来管理它们的事务和业务逻辑语义。

将表示组件(使用请求和响应的组件)放在与Web服务器相同的机器和/或进程中。如果将使用ASP内部组件对象的对象放在远程机器上,所有对内部组件的调用都将以回调的形式发生。是COM服务器调用IIS客户端,这大大降低了性能并使安全配置变得复杂。您可以将这些调整对象放在标有“库激活”的COM应用程序中。

ASP存在于服务器上,所以ASP页面必须符合资源共享规则,记住可伸缩性。请查看以下详细信息:

在“会话”中,管理应尽量避免用户特定的状态。

尽可能保持ASP无状态并允许资源池。

操作方式

当评估一个代码段是属于业务逻辑层还是表示层时,问问自己,“如果我必须用按键式电话应用程序替换我的ASP页面,代码还会有用吗?”如果答案是“是”,你可以试着把它分成业务逻辑代码或者用户界面助手代码。

如果换了客户端后代码就不能用了,或者是构造用户界面的助手,那么代码就属于表现服务层。它在ASP页面中,或者在使用ASP内部组件的组件中。它不是业务对象组件。

理解桌面与 ASP 客户机的区别

ASP是一种特殊的组件客户端,不同于传统的桌面单线程Win32应用。主要差异总结如下。

线程管理:ASP是一个多线程客户端。这意味着可以有许多并发的活动一起运行,可能同时处理不同的ASP页面。这说明对象无法假装自己是独占系统的唯一用户。这样做可能会产生意想不到的反应,例如,养成在ASP会话或应用程序变量中存储对象的坏习惯。

安全环境:ASP在网站中由Internet Information Services 5.0执行,有低、中、高三个隔离度。甚至这些网站可以有不同的安全设置,允许或拒绝匿名访问,验证客户,等等。所有这些设置会产生大量的场景,也就是说,不同的用户帐户最终会使用您的对象。

易增长:这不是技术问题,而是Web应用提供的设施的副作用。

传统上,增加桌面应用程序的用户群需要仔细规划部署到已知数量的客户端。ASP改变了这个过程。ASP-Visual Basic应用程序在启动和运行后,可以很容易地为本地或全球的所有员工、所有业务伙伴和所有客户打开。

可以这样描述——一封带超链接的邮件就能让用户基数增加十倍。您的应用程序为此做好准备了吗?唯一知道的方法就是测试网站的实力,以得到实际表现的期望值。

在ASP中应该如何使用Visual Basic对象?在页面范围内创建和取消您的对象。

也就是说,尽可能让ASP页面无状态,在临时状态下只依赖会话或者应用程序变量。不要将对象存储在会话或应用程序变量中。将此ASP线程锁定到您的会话,并取消所有预期的可伸缩性值。也就是说,Web服务器处理的用户数量不会超过几十个。如果您需要在会话或应用程序中存储内容,请让它成为数据而不是对象。

还有许多其他的指导方针可以遵循。我们建议你阅读J. D. Meier在MSDN之声上写的专栏“向上服务”。本专栏包括大量的技术、实践和技巧,有助于开发可扩展的、可靠的ASP和组件应用程序。

不要将引用存储在会话或应用程序中的 VB 对象中

所有Visual Basic 6.0组件都是“单元线程化的”,也就是说,它们都在STA单元中运行。这意味着,如果一个对象是在一个线程中创建的,那么对该对象的所有调用都必须由同一个线程提供服务。许多线程(来自并发网站的用户)使用STA对象的同一个实例,这将引起一系列活动,并可能成为应用程序中的瓶颈。

另外,存储用服务器创建的STA对象。会话范围内的CreateObject可以有效地将执行线程连接到当前用户,从而将应用程序的最大并发用户数限制在默认的20xN(N=处理器数)。

操作方式

如果你像我们建议的那样使对象成为无状态的,你就不需要存储供客户机重用的引用,并把它们存储在应用范围内。客户将能够独立地创建、使用和取消他们自己的对象。这减少了保留会话特定对象的需要,因为它们不保留会话特定的状态。

推荐的方法是使对象无状态,它在需要时访问数据库或其他存储区域(如cookies和LDAP)。

如果您需要使用会话或应用程序范围的数据,请将数据存储在此处,而不是存储处理数据的对象。您可以创建一个类来封装所需值的处理。

学习 IIS 5.0 中的新内容

Internet Information Server 5.0增加了许多新功能。这些改进已经写在了J.D. Meier的MSDN文章中:IIS 5.0中的ASP(英文)如下。

以上是ASP的开发准则。希望你能多了解这方面的知识,对ASP的发展有所帮助。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • session对象的默认有效期为几分钟,session一段时间,ASP中Session技巧 默认过期时间为20分钟
  • ASP编程,asp实例
  • ASP编程,asp实例,ASP常用源代码的总结(上)
  • asp是什么格式的文件,asp文件怎么打开-
  • asp是什么格式的文件,asp文件怎么打开-,asp是什么格式 asp文件用什么打开
  • ASP是什么协议,ASP定义
  • asp数组的使用介绍图片,asp数组的使用介绍怎么写
  • asp执行sql语句,asp+sql
  • asp将本地的文件上传到服务器,asp将本地的文件上传到服务器中
  • asp将本地的文件上传到服务器,asp将本地的文件上传到服务器中,asp将本地的文件上传到服务器
  • asp定义数组方法的技巧有哪些,asp定义数组方法的技巧是什么
  • asp定义数组方法的技巧是什么,asp定义数组方法的技巧有哪些,ASP定义数组方法的技巧
  • asp一句话木马免杀,asp木马具有的功能是什么
  • asp一句话木马免杀,asp木马具有的功能是什么,asp一句话木马原理分析
  • asp 数组长度,asp数组的使用介绍怎么写,asp数组的使用介绍
  • 留言与评论(共有 条评论)
       
    验证码: