网页浏览、文件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。
IIS的作用:在同一时间内允许打开的网站页面数,打开一个页面占一个IIS,打开一个站内框架页面占2到3个IIS;若图片等被盗链,在其它网站打开本站图片同样占一个IIS。假若设置参数为50个IIS,则这个站允许同时有50个页面被打开。但要在同一时间(极短的时间)有50个页面被打开,需要50个人同时操作,这个概率还是比较低的。所以,100个IIS支持日ip1000(同时访问网站人数必定远低于1000人)以上都不是很大问题,除非网站被盗链或框架引发其它消耗。
IIS 6.0为网络应用服务器的管理提供了许多新的特性,包括实用性、可靠性、安全性与可扩展性。IIS 6.0也增强了开发和国际化支持,Windows Server 2003和IIS 6.0为您提供了一整套最可靠、高效、连接的一体化网络应用解决方案。 Internet 信息服务(IIS)6.0和微软Windows Server 2003 为网络应用程序服务器管理引入了许多新的特征;更强的性能和扩展性;高效性,高可靠性和安全性。进行了许多重大的结构改进以满足客户需求。
IIS 6.0 提供广泛的新特性和技术和使它更为可靠、可扩展和安全、可管理,加强了对开发提供的技术特性支持。
IIS 6.0增强了安全性,为了尽量减少系统被攻击的危险,在默认情况下IIS 6.0是不会被安装在Windows Server 2003中的,管理员需要手动进行安装,IIS 6.0在被锁定状态中只为静态内容(.html .jpg .bmp等等)提供服务,通过网络服务扩展节点,网站管理员可根据企业的需求起用或禁止IIS功能。
越来越多的客户在一个Web服务器上跑多个应用程序或者多个站点,这对如今的Web服务器无疑提出了特定的需求,如果一个ISP在同一服务器上有两个公司的站点甚至互相争夺资源,那么他必须保证隔离两个应用程序相互独立运行,更为重要的是——他必须确保一个有恶意的应用程序管理员无法访问其它应用程序的数据,完全隔离是绝对必要的。IIS6.0可以通过配置工作进程验证实现这个级别的隔离。此外,IIS6.0还可以通过一些如控制带宽、分配CPU线程或者基于内存的回复功能来制造环境,让同一服务器运行竞争激烈的多个应用程序。
2.4 ASP的特点与功能
几年以前,业界在动态主页发布方面唯一的渠道是CGI(Common Gateway Interface) 模式。随后出现的 ISAPI、NSAPI和JDBC等技术方案虽较CGI进步,但从企业网(Intranet )的技术现实来衡量,这些方案仍不适用于进行快速开发、及时维护和大面积的技术普及。ASP技术的出现,使动态交互式Web主页设计成为一件轻松愉快的工作。只要几行脚本语句,就能将后台的数据库信息发布到Internet/Intranet上, 在编程和网页脚本的可读性方面大大优于传统的技术方案。
ASP是 Active Server Pages(动态服务器主页)的缩写,它是一个服务器端的脚本环境,在站点的Web服务器上解释脚本,可产生并执行动态、交互式、高效率的站点服务器应用程序。ASP可以胜任基于微软Web服务器的各种动态数据发布。 2.4.1 ASP方法与传统静态主页的区别
把信息系统纳入Internet/Intranet 的框架之后,首先要解决的问题是通过网页访问后台数据库信息。所有应用程序都被分割为页面的形式,用户的交互操作是以提交表单等方式来实现的,这就要求Web 站点具有很强的动态数据发布能力。然而,目前Web的服务,仍以提供\静态\主页内容为主。所谓\静态\指的就是站点的主页内容是\固定不变\的,无法根据用户的需求和实际情况作出相应的变化。当浏览器通过Internet的HTTP协议向站点的Web服务器申请主页时,站点服务器就会将已设计好的静态的HTML文件传送给浏览器。若要更新主页的内容, 只能用非在线的手动方式更新HTML的文件数据。
ASP所设计出的是动态主页,可接收用户提交的信息并作出反应, 其中的数据可
6
随实际情况而改变,无须人工对网页文件进行更新即可满足应用需要。例如:当在浏览器上填好表单并提交HTTP请求时,可以要求在站点服务器上执行一个表单所设定的应用程序,而不只是一个简单的HTML文件。该应用程序分析表单的输入数据,根据不同的数据内容将相应的执行结果(通常是数据库查寻的结果集)以HTML的格式传送给浏览器。数据库的数据可以随时变化,而服务器上执行的应用程序却不必更改,客户端得到的网页信息会始终保持新鲜的魅力。
当用户申请一个*.asp主页时,Web服务器响应该HTTP请求,调用ASP引擎,解释被申请文件。当遇到任何与ActiveX Scripting 兼容的脚本(如VBScript和JavaScript)时,ASP引擎会调用相应的脚本引擎进行处理。若脚本指令中含有访问数据库的请求,就通过ODBC与后台数据库相连,由数据库访问组件执行访库操作。ASP 脚本是在服务器端解释执行的,它依据访库的结果集自动生成符合HTML语言的主页, 去响应用户的请求。所有相关的发布工作由Web服务器负责。 2.4.2 ASP的特点与功能
从软件的技术层面看,ASP有如下的特点:
(1)无需编译,ASP脚本集成于HTML当中,容易生成,无需编译或链接即可直接解释执行。
(2)易于生成使用常规文本编辑器(如WINDOWS下的记事本),即可进行*.asp页面的设计。若从工作效率来考虑,不妨选用具有可视化编辑能力的Visual InterDev。
(3)独立于浏览器 用户端只要使用可解释常规HTML码的浏览器, 即可浏览ASP所设计的主页。ASP脚本是在站点服务器端执行的,用户端的浏览器不需要支持它。因此,若不通过从服务器下载来观察*.asp 主页,在浏览器端见不到正确的页面内容。
(4)面向对象在ASP脚本中可以方便地引用系统组件和ASP的内置组件,还能通过定制 ActiveX Server Component(ActiveX服务器组件)来扩充功能。
(5) 与任何ActiveX scripting 语言兼容除了可使用VBScript 和JavaScript语言进行设计外,还可通过Plug-in的方式,使用由第三方所提供的其它scripting 语言。
(6) 源程序码不会外漏 ASP脚本在服务器上执行,传到用户浏览器的只是ASP执行结果所生成的常规HTML码,这样可保证辛辛苦苦编写出来的程序代码不会被他人盗取。
从应用的层面看,ASP有如下的功能:
(1)处理由浏览器传送到站点服务器的表单输入。
(2)访问和编辑服务器端的数据库表。使用浏览器即可输入、更新和删除站点服务器的数据库中的数据。
(3)读写站点服务器的文件,实现访客计数器、座右铭等功能。 (4)提供广告轮播器、取得浏览器信息、URL表管理等内置功能。 (5)由cookies读写用户端的硬盘文件,以记录用户的数据。
(6)可以实现在多个主页间共享信息,以开发复杂的商务站点应用程序。 (7)使用VBScript或JavaScript等简易的脚本语言,结合HTML码,快速完成站点的应用程序。通过站点服务器执行脚本语言,产生或更改在客户端执行的脚本语言。
(8)扩充功能的能力强,可通过使用Visual Basic、Java、Visual C++ 等多种程序语言制作ActiveX Server Component以满足自己的特殊需要[10] 。
2.5 JSP技术介绍
JSP是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。该技术为创建显示动态生成内容的Web页面提供了一个简捷而快速的方法。JSP技术的设计目的是使得构造基于Web的应用程序更加容易和快捷,而这些应用程序能够与各种Web服务器,应用服务器,浏览器和开发工具共同工作。 JSP规范是Web服务器、应用服务器、交易系统、以及开发工具供应商间广泛合作的结果。
7
在传统的网页HTML文件(*html,*.html)中加入Java程序片段(ScriptServlet)和JSP标记(tag),就构成了JSP网页(*.jsp)。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户。程序片段可以操作数据库、重新定向网页以及发送 email 等等,这就是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低,可以实现无Plug in,无ActiveX,无Java Applet,甚至无Frame。
JSP技术在多个方面加速了动态Web页面的开发: 一、将内容的生成和显示进行分离
使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容(内容是根据请求来变化的,例如请求帐户信息或者特定的一瓶酒的价格)。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和Beans中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBCTM技术访问数据库,或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。
二、强调可重用的组件
JSP 作为一个很好的动态网页开发语言得到了越来越广泛的使用,在各类JSP 应用程序当中,JSP+JavaBean 的组合成为了一种事实上最常见的JSP程序的标准。JavaBean 是描述Java 的软件组件模型,有点类似于 Microsoft的COM 组件概念。在Java 模型当中,通过JavaBean 可以无限扩充Java 程序的功能,通过JavaBean 的组件可以快速地生成新的应用程序。对于程序员来说,最好的一点就是 JavaBean可以实现代码的重复利用。
JavaBean 是一种基于 Java 的软件组件。 JSP 对于在 Web 应用中集成 JavaBean 组件提供了完善的支持。这种支持不仅能缩短开发时间(可以直接利用经测试和可信任的已有组件,避免了重复开发),也为 JSP 应用带来了更多的可伸缩性。 JavaBean 组件可以用来执行复杂的计算任务,或负责与数据库的交互以及数据提取等。如果我们有三个 JavaBean ,它们分别具有显示新闻、股票价格、天气情况的功能,则创建包含所有这三种功能的 Web 页面只需要实例化这三个 Bean ,使用 HTML 表格将它们依次定位就可以了。利用跨平台运行的 JavaBean 组件, JSP 为分离处理逻辑与显示样式提供了卓越的解决方案。
2.6 Ajax技术简介
AJAX全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。
许多重要的技术和AJAX开发模式可以从现有的知识中获取。例如,在一个发送请求到服务端的应用中,必须包含请求顺序、优先级、超时响应、错误处理及回调,其中许多元素已经在Web服务中包含了,就像现在的SOA。AJAX开发人员拥有一个完整的系统架构知识。同时,随着技术的成熟还会有许多地方需要改进,特别是UI部分的易用性。
AJAX开发与传统的C/S开发有很大的不同。这些不同引入了新的编程问题,最大的问题在于易用性。由于AJAX依赖浏览器的JavaScript和XML,浏览器的兼容性和支持的标准也变得和JavaScript的运行时性能一样重要了。这些问题中的大部分来源于浏览器、服务器和技术的组合,因此必须理解如何才能最好的使用这些技术。
综合各种变化的技术和强耦合的客户服务端环境,AJAX提出了一种新的开发方
8
式。AJAX开发人员必须理解传统的MVC架构,这限制了应用层次之间的边界。同时,开发人员还需要考虑C/S环境的外部和使用AJAX技术来重定型MVC边界。最重要的是,AJAX开发人员必须禁止以页面集合的方式来考虑Web应用而需要将其认为是单个页面。一旦UI设计与服务架构之间的范围被严格区分开来后,开发人员就需要更新和变化的技术集合了。
AJAX的最大机遇在于用户体验。在使应用更快响应和创新的过程中,定义Web应用的规则正在被重写;因此开发人员必须更注重用户。现在用户已经逐渐习惯如何使用Web应用了。例如用户通常希望每一次按钮点击会导致几秒的延迟和屏幕刷新,但AJAX正在打破这种长时间的状况。因此用户需要重新体验按钮点击的响应了。
可用性是AJAX另人激动的地方而且已经产生了几种新颖的技术。其中最引人注目的是一种称为“黄色隐出”的技术,他在数据更新之前时将用户界面变为黄色,更新完成后立刻恢复原来的颜色。AJAX开发人员将用户从Web应用的负载中解放出来;小心地利用AJAX提供的丰富接口,不久桌面开发人员会发现AJAX是他们的方向。
(1) JavaScript
如名字所示AJAX的概念中最重要而最被忽视的是他也是一种JavaScript编程语言。JavaScript是一种粘合剂使AJAX应用的各部分集成在一起。在大部分时间,JavaScript通常被服务端开发人员认为是一种企业级应用不需要使用的东西应该尽力避免。这种观点来来自以前编写JavaScript代码的经历:繁杂而又易出错的语言。类似的,他也被认为将应用逻辑任意地散布在服务端和客户端中,这使得问题很难被发现而且代码很难重用。在AJAX中JavaScript主要被用来传递用户界面上的数据到服务端并返回结果。XMLHttpRequest对象用来响应通过HTTP传递的数据,一旦数据返回到客户端就可以立刻使用DOM将数据放到网面上。
(2)XMLHttpRequest
XMLHttpRequest对象在大部分浏览器上已经实现而且拥有一个简单的接口允许数据从客户端传递到服务端,但并不会打断用户当前的操作。使用XMLHttpRequest传送的数据可以是任何格式,虽然从名字上建议是XML格式的数据。
XPath可以访问XML文档中的数据,但理解XML DOM是必须的。类似的,XSLT是最简单而快速的从XML数据生成HTML或XML的方式。许多开发人员已经熟悉Xpath和XSLT,因此AJAX选择XML作为数据交换格式有意义的。XSLT可以被用在客户端和服务端,他能够减少大量的用JavaScript编写的应用逻辑。
(3)CSS
为了正确的浏览AJAX应用,CSS是一种AJAX开发人员所需要的重要武器。CSS提供了从内容中分离应用样式和设计的机制。虽然CSS在AJAX应用中扮演至关重要的角色,但他也是构建创建跨浏览器应用的一大阻碍,因为不同的浏览器厂商支持各种不同的CSS级别[11] 。
传统的web应用允许用户填写表单(form),当提交表单时就向web服务器发送一个请求。服务器接收并处理传来的表单,然后返回一个新的网页。这个做法浪费了许多带宽,因为在前後两个页面中的大部分HTML代码往往是相同的。由于每次应用的交互都需要向服务器发送请求,应用的响应时间就依赖于服务器的响应时间。这导致了用户界面的响应比本地应用慢得多。
与此不同,AJAX应用可以仅向服务器发送并取回必需的数据,它使用SOAP或其它一些基于XML的web service接口,并在客户端采用JavaScript处理来自服务器的响应。因为在服务器和浏览器之间交换的数据大量减少,结果我们就能看到响应更快的应用。同时很多的处理工作可以在发出请求的客户端机器上完成,所以Web服务器的处理时间也减少了。
使用Ajax的最大优点,就是能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。
Ajax不需要任何浏览器插件,但需要用户允许JavaScript在浏览器上执行。就像DHTML应用程序那样,Ajax应用程序必须在众多不同的浏览器和平台上经过严格
9
的测试。随着Ajax的成熟,一些简化Ajax使用方法的程序库也相继问世。同样,也出现了另一种辅助程序设计的技术,为那些不支持JavaScript的用户提供替代功能。
2.7 Dreamweaver 简介
Dreamweaver是美国MACROMEDIA公司开发的集网页制作和网站管理于一身的所见即所得网页编辑器, 是一种可视化网页制作工具,利用它可以轻松地制作出跨越平台限制和跨越浏览器限制的动态网页。
Dreamweaver 可以开发HTML、XHTML、ColdFusion、ASP、ASP.NET、JSP或PHP网站。通过平面设计工具以及代码提示、标签编辑器、可扩展色彩代码、标签选择器、片段和代码检验这类编码特性来实现对代码和设计的管理。新集成的工作空间可以与Macromedia Flash MX和Fireworks MX共享,其中包括了标示签的文档窗口、可放到dock中的画板组、可定制的工具条和集成的文件浏览。Dreamweaver 还包括有预建的布局和代码,其中有网站结构、表格、可访问的模板以及为客户端交互应用而提供的JavaScript。
为翻新现有网站以及创建下一代应用程序,Dreamweaver 还支持新标准和新的网页技术,带有对XML、网页服务和增强可访问性的支持。Dreamweaver MX为新的ColdFusion MX特性提供全套的支持,包括增强的代码编辑和开发功能、集成的调试功能、可视化布局功能和照片打印功能。
10