网 站 设 计 与 建 设 Website design and developments
第二部分 网站规划 第9章 软件平台规划
9.1 Web服务器操作系统选型 操作系统:由硬件决定,决定可以运行的软件以及服务器的安全性和可靠性。 应用程序:由操作系统决定。 Unix Server Linux Server Windows 2003/2000 Server
1969年,Ken Thompson,AT&T贝尔实验室,DEC PDP-7计算机。 UNIX 1969年,Ken Thompson,AT&T贝尔实验室,DEC PDP-7计算机。 AT&T对大学或科研机构提供源代码 BSD UNIX:最早实现TCP/IP。 UNIX代表:AIX,HP UX,Novell UNIXWare, SCOUNIX, Solaris等 Code developed with a language compiler that targets the runtime is called managed code; it benefits from features such as cross-language integration, cross-language exception handling, enhanced security, versioning and deployment support, a simplified model for component interaction, and debugging and profiling services.
UNIX特点: 关键性业务首选 技术成熟、可靠性高:24*365。 极强的伸缩性:笔记本、PC、工作站、小型机、巨型机等;支持SMP、MPP和Cluster 网络更能强:内核支持。 强大数据库支持能力:Oracle,Informix,Sybase等 开发功能强:工作站 用户界面多样化:命令行输入、X-Window Code developed with a language compiler that targets the runtime is called managed code; it benefits from features such as cross-language integration, cross-language exception handling, enhanced security, versioning and deployment support, a simplified model for component interaction, and debugging and profiling services.
LINUX 1991/8/25,Linus Benedict Torvalds,芬兰赫尔辛基大学计算机系学生。 主要运行在Intel X86的PC机上。 免费,并提供源代码,可以任意修改。 强大的网络功能 支持多种硬件平台:x86,SPARC,Alpha等。SMP、IA64等 可靠稳定:可以运行在关键任务上。 Code developed with a language compiler that targets the runtime is called managed code; it benefits from features such as cross-language integration, cross-language exception handling, enhanced security, versioning and deployment support, a simplified model for component interaction, and debugging and profiling services.
Windows 2000/2003 server Microsoft 不免费、也不公开源代码 各版本间兼容性非常好 强大数据库支持能力 非常友好的GUI图形用户界面,特别适于初学者 非多用户操作系统 稳定性、安全性较差 Code developed with a language compiler that targets the runtime is called managed code; it benefits from features such as cross-language integration, cross-language exception handling, enhanced security, versioning and deployment support, a simplified model for component interaction, and debugging and profiling services.
操作系统之间的比较与选择 安全性 可靠性 易维护 易管理 熟悉度 开发环境 价格因素 Code developed with a language compiler that targets the runtime is called managed code; it benefits from features such as cross-language integration, cross-language exception handling, enhanced security, versioning and deployment support, a simplified model for component interaction, and debugging and profiling services.
9.2 HTTP(Web)服务器选型 HTTP服务器通常也叫做Web服务器 9.2 HTTP(Web)服务器选型 HTTP服务器通常也叫做Web服务器 它提供在Internet或Intranet上的HTML文档服务,即提供客户使用浏览器访问网站信息的网页,Web服务器不能直接访问数据库,因此Web服务器仅能提供静态页面。
现在最流行的Web服务器有 Apache IIS lighttpd Sun Java System Web Server IBM Lotus Domino Web Server
①Apache:http://www.apache.org 一个免费的、稳定的、商业级的和公开程序源代码的HTTP Web 服务器。 Apache服务器的市场占有率约为60%以上 最新版本是Apache 2.2.4 现在Apache Web业已成为Web服务器的一个事实标准。
②IIS:http://www.microsoft.com IIS(Internet Information Services)是Microsoft公司的Web服务组件 包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器 IIS仅能用于Windows平台, IIS比Apache更易于配置、管理和维护
③lighttpd:http://www.lighttpd.net 开源软件 Lighttpd具有非常低的内存开销,cpu占用率低,效能好,以及丰富的模块等特点。 利用apache的rewrite技术,将繁重的cgi/fastcgi任务交给Lighttpd来完成,充分利用两者的优点。 Lighttpd现在的版本为Lighttpd 1.4.15。
④Sun Java System Web Server:http://www.sun.com 适用于大多数主要操作系统 为组织提供 Web 服务、JavaServer 页面 (JSP)、Java Servlet 技术、NSAPI 和 CGI 的单一部署平台。 其捆绑的 FastCGI 接口还提供一个稳定且可伸缩的平台,用于 PHP、Ruby on Rails、Perl、Python 等第三方脚本技术。
⑤IBM Lotus Domino Web Server:http://www.ibm.com 群组协同作业达到最佳化。并提供跨平台的群集备援技术、系统故障转移、动态负载平衡、帐户服务等等。让企业电子商务可24小时全天候服务,是企业处理关键应用系统最优质的平
9.3 应用服务器(中间件)选型 应用服务器中间件又称为“应用服务器软件平台” Web服务器主要完成显示逻辑,将静态页面的信息现在客户端的屏幕上; 应用服务器完成业务逻辑,将业务处理的信息数据传递给Web服务器,替换掉嵌入在HTML中的动态语言部分,再由Web服务器传递到客户端显示在屏幕上; 数据库服务器完成数据逻辑,提供数据库的管理与维护。
应用服务器(或存取数据库为Web服务器提供数据的服务器平台)现在主要有 Tomcat IIS PHP WebSphere WebLogic JBosss Sun Java System Application Server Oracle Application Server
①Tomcat:http://tomcat.apache.org 免费的开放源代码的Web应用服务器, 它是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目 最新版本为Tomcat 6支持最新的Servlet 2.5和JSP 2.1规范。 Tomcat不仅能处理动态HTML,还能处理静态HTML,但是处理静态HTML的效力不如Apache HTTP服务器,因此在Tomcat之前一般安装Apache HTTP服务器。 Tomcat现在已是最优秀和最受欢迎的基于java的应用服务器之一。
②IIS:http://www.microsoft.com IIS不仅能解释HTML页面,还能解释ASP的动态页面-访问数据库。 IIS是目前最流行的Web(应用)服务器产品之一 ASP、ASP.NET、CGI 脚本、Microsoft 的 FrontPage® 2002 Server Extensions 以及 WebDAV 发布功能。
PHP超文本预处理器(Hypertext Preprocessor)作为Web开发的免费、提供源代码的脚本语言 它用于管理动态内容、支持数据库、处理会话跟踪,甚至构建整个电子商务站点,它可以直接连接数据库 如Mysql,Oracle,Sybase,Informix,Microsoft SQLServer,Access 等, 还完全支持ODBC接口,用户更换平台时,无需变换PHP代码。
④IBM WebSphere:http://www.ibm.com WebSphere 是 IBM 的集成软件平台。 WebSphere Application Server 是该基础设施的基础,其他所有产品都在它之上运行 WAS是一种功能完善、开放的Web应用程序服务器,是IBM电子商务计划的核心部分,它是基于J2EE 1.4的应用环境,用于建立、部署和管理Internet和 Intranet Web应用程序或应用客户端程序 WAS现在已是中大型电子商务或企业应用开发、管理和部署的热选平台之一,与WebLogic齐名
⑤BEA WebLogic:http://www.bea.com.cn BEA WebLogic Server 是一种多功能、基于J2EE 1.4标准的web应用服务器, 为企业构建自己的应用提供了坚实的基础。 各种应用开发、部署所有关键性的任务,无论是集成各种系统和数据库,还是提交服务、跨 Internet 协作,起始点都是 BEA WebLogic Server
⑥JBoss Application Server:http://www.jboss.com JBoss是一个开源的符合J2EE规范的应用服务器, 作为J2EE规范的补充,Jboss中引入了AOP框架,为普通Java类提供了J2EE服务 JBoss是一个运行EJB的J2EE应用服务器,例如:数据库访问JDBC、交易(JTA/JTS)、消息机制(JTS)、命名机制(JNDI)和管理支持(JMX)。 JBoss应用服务器已经真正发展成具有企业强度(即支持关键性任务的应用)的应用服务器。。
⑦Sun Java System Application Server:http://cn.sun.com Sun Java System Application Server是一个与Java 2平台企业版(J2EE平台)兼容的应用程序服务器,用来开发和发送服务器端的应用程序和Web服务。 ⑧Oracle Application Server:http://www.oracle.com Oracle应用服务器是Oracle 融合中间件的一个关键组件
9.4 Web数据库服务器选型 Web数据库主要是指关系数据库, Oracle Sybase DB2 SQLServer MySQL Access
9.5 动态网页设计语言选型 现在服务器端技术主要有CGI、PHP、ASP、JSP CGI不是一种动态网页设计语言
1.常用动态网页语言简介 ASP:Active Server Pages,Microsoft,使用VBScript或JavaScript脚本语言。 PHP:跨平台,完全免费,提供源码,Http://www.php.net JSP:Sun公司开发的跨平台语言,JDK,J2EE,。
1.常用动态网页语言简介(续) 这三种动态网页语言都是嵌入在HTML中 JSP第一次使用时被编译成Servlet,由Java虚拟机(JVM)解释执行。 HTML主要描述信息的显示样式;动态语言处理服务器端的逻辑,需要附加的语言引擎分析和执行程序代码。
2.ASP技术特点 Microsoft公司产品,只能运行在微软平台。 脚本语言:VBScript,JavaScript语言。 无须编译,容易编写。 通过plug-in方式,可使用第三方脚本语言:Perl、TCL等,脚本引擎是COM程序。 使用普通编辑器即可编写。 与客户端的浏览器无关。 ActiveX Server Components(服务器组件):使用VB,VC, Java, Cobol等语言可扩充ASP的能力。 ASP功能有限,必须通过ASP+COM进行扩充。
3.PHP技术特点 数据库连接:PHP+MySQL,支持个数据库的接口不统一。 面向对象编程 PHP可跨操作系统平台和Web服务器平台
4.JSP技术特点 JSP可跨操作系统平台和Web服务器平台 JSP和JavaBeans与平台无关 将内容的生成和显示分离(JSP、HTML/XML) 强调可重用的组件 采用标识简化页面开发 JSP技术可以自己扩展:标识库 JSP技术能够支持企业级的分布式应用 所有JSP页面被编译成Java Servlet 一次编写,各处运行
5.JSP的优势 JSP、ASP、PHP来源不同的技术规范 JSP、PHP跨平台,ASP主要运行在微软平台 JSP: 一次编写,各处运行。 JSP编译运行,ASP、PHP脚本级运行(PHP4已可以在Zend支持下,实现编译运行); PHP是中小型网站的首选。
6.JSP、ASP和PHP的前景分析 JSP: 20000*20000循环测试,4s ASP: 2000*2000循环测试,63s PHP: 2000*2000循环测试,84s Oracle 8进行1000次操作 JSP: 13s ASP: 73s PHP: 69s PHP: 缺乏规模支持和多层次结构支持,即缺乏分布计算的能力。数据库接口支持不统一,不适于大型电子商务网站。 JSP是最有发展前途的趋势:WebSphere、WebLogic