[优秀毕业论文]无线上网移动增值业务终端管理系统的设计与实现.doc

上传人:小小飞 文档编号:3903917 上传时间:2019-10-10 格式:DOC 页数:65 大小:3.81MB
返回 下载 相关 举报
[优秀毕业论文]无线上网移动增值业务终端管理系统的设计与实现.doc_第1页
第1页 / 共65页
[优秀毕业论文]无线上网移动增值业务终端管理系统的设计与实现.doc_第2页
第2页 / 共65页
[优秀毕业论文]无线上网移动增值业务终端管理系统的设计与实现.doc_第3页
第3页 / 共65页
[优秀毕业论文]无线上网移动增值业务终端管理系统的设计与实现.doc_第4页
第4页 / 共65页
[优秀毕业论文]无线上网移动增值业务终端管理系统的设计与实现.doc_第5页
第5页 / 共65页
点击查看更多>>
资源描述

《[优秀毕业论文]无线上网移动增值业务终端管理系统的设计与实现.doc》由会员分享,可在线阅读,更多相关《[优秀毕业论文]无线上网移动增值业务终端管理系统的设计与实现.doc(65页珍藏版)》请在三一文库上搜索。

1、本科毕业设计(论文)摘 要随着互联网络的不断发展,使用无线上网的人群也在日益增加,无线上网移动增值业务平台为更多的人提供了一系列方便的服务。如何做好这个平台系统,使之方便、快捷、内容丰富,同时又有很好的稳定性、安全性、可复用性就成为了一个很重要的课题。WAP是一种无线应用协议,是一个全球性的开放协议。WAP 定义可通用的平台,把目前Internet 网上HTML语言的信息转换成用WML 描述的信息,显示在移动电话或者其他手持设备的显示屏上。本文完成的无线上网移动增值业务平台的设计和实现,使用的编程语言为PHP,数据库服务器使用了MySQL, WEB服务器使用了Apache。本系统主要实现后台的

2、终端管理系统、首页设计、产品控制、产品设计和系统日志。终端管理包括支持格式维护、终端UA维护、CUI维护三个对象的管理。终端UA维护模块管理手机的各种参数、适配信息、适配方式。支持格式维护模块管理手机的适配类型。CUI维护模块用来管理维护CUI,实现了对运营商的定义。系统日志模块用来查看添加系统日志。 首页设计模块用来添加、修改、产品的首页。产品控制模块控制产品的一些开关操作,用来区分不同级别的客户,对不同的客户级别提供不同的内容版本。产品设计模块用来添加、修改、设置产品的属性。关键词WAP;适配;增值AbstractAs the Internet continues to develop,

3、the use of the wireless Internet access is also growing crowd. Meanwhile, mobile value-added wireless Internet business platform have more people to provide a series of convenient services. How this platform system to make it convenient, rich in content, also has good stability, security, Reusabilit

4、y has become a very important topic. WAP is a Wireless Application Protocol, is an open global agreement. WAP defined common platform, the current HTML language Internet online information into WML with the information described, displayed on the mobile phone, or other handheld devices screen. Multi

5、ple networks, in other words, it does not depend on a certain network exists Todays WAP services in the three G after arrival may still continue to exist, but transmission speed faster, protocol standards will also be upgraded. In this paper, complete wireless Internet platform for mobile value-adde

6、d services in the design and realization of the use of the programming language PHP, database server using MySQL, Web servers use Apache. The systems main terminal management background, the homepage design, product control, product design and system log. Terminal management including support for th

7、e format maintenance, terminal UA maintenance, and maintenance of three CUI object management. UA terminal maintenance management module parameters of the cell phone, adapter information Adapter mode. Support management module format safeguard cell phone adapter types. CUI maintenance module to mana

8、ge and maintain CUI realize the definition of commercial operation. System logging module added to the system log View. Home design module is the users phone line after the show, used to add, modify, product homepage. Product Control Module control of some products switching operation used to distin

9、guish between different levels of customers, different customers with different levels of content versions. Product design module to add, modify, set up product attributes.Keywords WAP Adapter Value - I -本科毕业设计(论文)目 录摘 要IAbstractII第1章 绪论11.1 课题来源、研究目的及意义11.2 国内外相关领域开发及应用现状分析11.2.1 无线应用协议的定义11.2.2 无线

10、应用协议的体系结构11.2.3 无线应用协议的应用31.2.4 无线应用协议的一些制约和发展41.3 本文的主要内容5第2章 系统相关技术介绍62.1 PHP语言简介62.2 WEB服务器Apache介绍82.3 数据库服务器MySQL112.4 本章小结14第3章 需求分析和系统设计153.1 系统需求分析153.1.1 功能需求153.1.2 性能需求173.2 系统体系结构设计173.3 系统功能结构设计193.4 系统数据库设计213.5 系统公共类设计233.6 本章小结24第4章 系统的实现与测试254.1 终端管理模块功能实现254.2 建立系统日志功能334.3 首页设计模块功

11、能实现354.4 产品控制模块功能实现394.5 产品设计模块功能实现424.6 WAP应用程序安全测试454.6.1 压力测试464.6.2 用户登录测试484.6.3 手动修改URL参数的测试494.6.4 客户端测试494.7 单元测试504.8 本章小结51结论52致谢53参考文献54附录 部分程序截图及部分后台数据库字段说明56- III -本科毕业设计(论文)第1章 绪论1.1 课题来源、研究目的及意义本项目来源于北京爱迪通信有限责任公司2006年的一个中型项目无线上网移动增值业务平台。公司目前正在使用的无线应用协议WAP(Wireless Application Protocol

12、)浏览下载类业务发布平台WapX5.0,存在前后台不能分开部署,操作移植不灵活;存在冗余数据,资源不能得到有效的管理和利用;后台功能划分不清晰,管理混乱,操作困难;权限管理不严格,易导致操作、系统设计及某些需求不能实现等错误。WAP开发部门在现有WapX5.0平台的设计结构下,不能彻底解决上述问题,影响了业务的运营。为此,提出开发WapX6.0平台的需求。WapX6.0在WapX5.0的基础上优化系统设计,调整数据结构,前后台能分开部署,有效管理各种数据资源;清晰划分后台管理功能,增加管理界面的友好性,使后台易于管理和维护;严格划分管理权限,减少人为错误的发生几率。1.2 国内外相关领域开发及

13、应用现状分析1.2.1 无线应用协议的定义WAP 是一种无线应用协议,是一个全球性的开放协议1。WAP 定义可通用的平台,把目前Internet 网上HTML语言的信息转换成用WML 描述的信息,显示在移动电话或者其他手持设备的显示屏上2。多种网络,也就是说,它不依赖某种网络而存在,今天的WAP 服务在3G 到来后仍然可能继续存在,不过传输速率更快,协议标准也会随之升级3。1.2.2 无线应用协议的体系结构WAP包括以下几层: (1)应用层。即无线应用环境WAE(Wireless Application Environment),它是基于WWW 和移动电话技术而建立的一种通用应用环境。其基本目

14、的是构建一个可共同操作的环境,以便允许操作人员和服务供给者创建适用于不同无线平台的应用与服务。(2)无线会话层。无线会话层协议WSP(Wireless Session Protocol)向两个对话服务提供一致接口的WAP应用层。(3)传输协议层。无线传输协议层WTP(Wireless Transaction Protocol)在数据包服务的顶端运行,并提供适合在“瘦”客户即移动网络站上执行的普通事务服务,并可对移动终端进行优化。(4)安全协议层。无线传输安全层协议WTLS(Wireless Transaction Layer Security)是基于工业标准传输层安全协议的协议,它在安全传输协

15、议SSL的基础上针对WAP传输所用的低带宽通信信道进行了优化,主要为数据传递提供一些功能和服务。(5)数据报协议层。无线数据报协议WDP(Wireless Datagram Protocol)用于传输数据,发送和接收消息。它可以向WAP的上层协议提供服务支持,并保持通信的透明性,同时能够独立运行下部无线网络4。WAP 的体系结构与Internet/ WWW 的体系结构十分相似,图1-1 是WAP 的体系结构5。 图1-1 WAP的体系结构图1-1 中,承载一层并不算在WAP 中,列出来只表示WAP 支持各种承载媒体( GSM、CDMA、FLEX、GPRS等) ,支持各种手持设备(手机、个人数字

16、助理PDA、寻呼机等) 。总之一句话,WAP 是独立于无线网络及设备的。用户可使用任何支持WAP 的设备,利用已有的承载接入到WAP 网关/ 代理,从而访问因特网。WAP 的分层结构使得其它服务和应用通过一系列精心定义的接口就可以充分利用WAP 协议的功能。外部应用可以直接访问会话层、事务处理层、安全层和传输层。这就使得虽然目前没有被WAP 所确定但是对无线市场来说很有市场价值的一些服务和应用也可以使用WAP 协议,例如,电子邮件、日历,电话号码簿、记事本、以及电子商务、白页、黄页等都有可能使用WAP 协议6。1.2.3 无线应用协议的应用爱立信、摩托罗拉、诺基亚和Unwired P1anet

17、 (简称UP) 4 家公司于1997 年6 月发起成立WAP 论坛(WAP Forum) :其宗旨是共同开发一种能将Internet的信息与业务引入到移动终端的协议:即WAP 协议。WAP 是适用移动终端设备的无线因特网协议,WAP为将Internet 的信息内容及增值业务传送到移动终端(手机、寻呼机和个人数字助理等) 提供了一种开放的通用标准,WAP 论坛得到世界的积极响应;现在已有AT &T、IBM、Inte1 、HP、西门子、阿尔卡特等90 多家(有的说120 家) 大厂商加入WAP 论坛。1998 年2 月WAP 规范草案出台。同年4 月完成规范1. 0 版(即WAP1. 0) ,WA

18、P1. 0 由4 部分组成,即爱立信的智能终端传输协议( ITTP) 、诺基亚的智能消息规范、HP 公司的手持装置传输协议(HDTP) 和手持装置标记语言(HDML) ;1999 年6 月;WAP1. 1 版正式分布。WAP 论坛与其他标准组织诸如:美国TIA、I2ETF、欧洲ETSI、ECMA 以及W3C(万维网集团) 等都有密切合作关系, WAP 已成为事实上的全球无线应用协议。WAP 由于良好的开放性和互通性、独立于无线网络和设备、充分利用现有协议(如XML 、IP) 等特点,其应用前景正越来越被业界看好。7WAP 提供的业务主要以日常信息的处理、检索、网上贸易和来话通告为主8。WAP

19、可应用于移动通信网( GSM、CDMA、TDMA) 、无绳电话网( PHS、DECT、PACS) 、寻呼网(如FL EX) 、集群网(如TETRA) 、移动数据网(如CDPD) 等,目前主要是在GSM 网的应用9。如今有的手机已经实现了WAP 协议,具有登陆因特网和相关网络的功能,能够使移动用户访问开设无线接入服务的因特网网站,随时随地进行信息双向互动,如浏览中/ 英文网页;电子商务应用,如信用卡对账、付费、航班查询、预订机票等;同时,利用它还可以接收和发送电子邮件、点播信息( IOD) 。WAP 是一个开放的、全球性的无线互联网通信协议,它通过终端设备和网络设备的标准,使移动电话可以随时获取

20、互联网信息10。目前,几乎所有的移动运营商都建设了WAP 网关,提供WAP 上网业务。随着具备WAP 浏览功能的2.5 代手机的普及,基于WAP 浏览技术的增值业务也开始出现了快速增长的势头。中国移动的“移动梦网”WAP 业务和中国联通的“互动视界”业务就是这一类型的服务。和短信增值业务一样,运营商采用了相同的商业模式,吸引了大量的SP 开发和销售WAP 增值业务。但一改短信服务管理模式,WAP 服务的内容计费由运营商来负责,从而杜绝了SP 的不规范经营行为。从近期的市场反映来看,WAP 业务的增长非常迅猛,在短短的半年时间里,中国联通的“互动视界”用户就已经超过了300万,业务收入将近4 千

21、万元;中国移动的WAP 业务也在快速增长11。WAP 浏览技术使手机具备了浏览互联网信息的能力。在增值业务的物理结构上,SP 只要根据互联网的通用标准协议建立起内容服务器,通过HTTP 传输协议和运营商的统一接入管理平台、WAP 网关相连,就可以实现增值业务的服务提供。在增值服务内容的组织上,SP 利用WAP 的浏览功能,向用户提供更加丰富的文字、图片信息,如新闻、天气预报、资料查询等服务;利用WAP 的大容量文件下载功能,向用户提供和弦铃声、彩色图片、视频片段下载等服务;利用WAP 的交互功能,开发了聊天交友、游戏服务;利用WAP PUSH(下推)功能,实现了内容送礼的服务12。SP 还可以

22、通过WAP 业务平台实现和短信业务平台完全一样的娱乐和信息服务。并且,用户在使用WAP 浏览业务时操作相对简单,因为WAP 是菜单式界面并由服务器端生成业务菜单,菜单形式可以很方便地更改或者可以由用户自定义格式,用户的使用感受比较人性化。特别是WAP 技术已由WAP1.2 版本升级到WAP2.0 版本,将会支持XHTML 语言,手机页面的呈现效果接近PDA 浏览器,届时,WAP 增值服务内容将会更加精彩纷呈。虽然WAP 技术的产生已经有很长的历史,但WAP 业务真正的发展是在手机彩屏化之后。如果从手机功能的普及度来讲,WAP 手机还远远不如短信手机,这也注定在短时间内,WAP 业务还不能替代短

23、信。并且,在业务的发现途径上,WAP 业务只能通过手机自主登录,而短信增值业务可以利用十分普及的互联网网站发现和发起业务。据统计,短信增值业务有近50% 的业务是在门户网站上发现和发起的13。1.2.4 无线应用协议的一些制约和发展WAP作为接通无线通信与有线网络的一项新兴技术,其构思是理想的,发展是较为迅速的,但目前在技术上仍受到一定的制约。首先,无线数据网络和有线网络相比,具有更小心严格的通信环境,提供的范围和活动也受到一些基本限制。其次,随着带宽的增加,手机能量消耗也会增加,这样就使移动通信器件中有限的电池寿命负荷加重。另外,WAP的发展还受到元件不足的影响。 目前市场上的手机配件和台式

24、机相比,具有更为严格的运算环境。由于这些限制,无线手机要使用完全不同于台式机的用户接口,具有一定的局限性,但这些问题必将会随着技术上的进步而得到改进。随着移动网络和终端技术的发展,大量新型的服务被应用到了手机上,原先只能支持话音和简单数据业务的移动电话,已经逐渐变成了具备上网功能的智能化通信终端。即将到来的3G 移动通信网络和遵循着摩尔定律发展的高速手机芯片和器件,可以实现移动增值服务发展更快、更好的梦想。同时,与网络和硬件相配合的软件技术也在飞速地前进着,它们经过不断地演进,发展成为了不同的增值服务平台14。1.3 本文的主要内容本文主要内容是论述了无线上网移动增值业务平台的设计和实现,脚本

25、语言使用的是PHP。开发使用了Apache2+PHP5+MYSQL5+Zend框架。主要针对平台系统以下内容进行了论述:终端管理模块、系统日志模块、首页设计、产品控制、产品设计。在第1章中主要阐述了课题来源和国内外相关领域的开发与应用现状分析;在第2章中介绍了系统相关的技术,包括PHP语言、数据库服务器MySQL、web服务器Apache;在第3章中,主要是针对系统的需求分析和系统设计;在第4章中,主要讲的是系统的实现与测试。第2章 系统相关技术介绍2.1 PHP语言简介PHP(“PHP: Hypertext Preprocessor”,超文本预处理器的字母缩写)是一种被广泛应用的开放源代码的

26、多用途脚本语言,它可嵌入到 HTML中,尤其适合 WEB 开发15。 和客户端的 JavaScript 不同的是,PHP 代码是运行在服务端的。如果在服务器上建立了如上例类似的代码,则在运行该脚本后,客户端就能接收到其结果,但无法得知其背后的代码是如何运作的。可以将 WEB 服务器设置成让 PHP 来处理所有的 HTML 文件,这么一来,就无法得知服务端到底做了什么。 PHP 主要是用于服务端的脚本程序,因此可以用 PHP 来完成任何其它的 CGI 程序能够完成的工作,例如收集表单数据,生成动态网页,或者发送/接收 Cookies。PHP 脚本主要用于以下三个领域。 服务端脚本。这是 PHP

27、最传统,也是最主要的目标领域。开展这项工作您需要具备以下三点:PHP 解析器(CGI 或者服务器模块)、WEB 服务器和 WEB 浏览器。您需要在运行 WEB 服务器时,安装并配置 PHP,然后,可以用 WEB 浏览器来访问 PHP 程序的输出,即浏览服务端的 PHP 页面。 命令行脚本。可以编写一段 PHP 脚本,并且不需要任何服务器或者浏览器来运行。通过这种方式,仅仅只需要 PHP 解析器来执行。这种用法对于依赖 cron(Unix 或者 Linux 环境)或者 Task Scheduler(Windows 环境)的日常运行的脚本来说是理想的选择。这些脚本也可以用来处理简单的文本。编写客户

28、端的 GUI 应用程序。对于基于窗口式的应用程序来说,PHP 或许不是一种最好的语言,但是如果非常精通 PHP,并且希望在客户端应用程序中使用 PHP 的一些高级特性,可以利用 PHP-GTK 来编写这些程序。用这种方法,还可以编写跨平台的应用程序。PHP-GTK 是 PHP 的一个扩展,在通常发布的 PHP 包中并不包含它。PHP 能够用在所有的主流操作系统上,包括 Linux、Unix 的各种变种(包括 HP-UX、Solaris 和 OpenBSD)、Microsoft Windows、Mac OS X、RISC OS 等。PHP已经支持了大多数的 WEB 服务器,包括 Apache、M

29、icrosoft Internet Information Server(IIS)、Personal Web Server(PWS)、Netscape 以及 iPlant server、Oreilly Website Pro Server、Caudium、Xitami、OmniHTTPd 等。对于大多数的服务器,PHP 提供了一个模块;还有一些 PHP 支持 CGI 标准,使得 PHP 能够作为 CGI 处理器来工作。 综上所述,使用 PHP,可以自由地选择操作系统和 WEB 服务器。同时,还可以在开发时选择使用面对过程和面对对象,或者两者混和的方式来开发。尽管 PHP 目前的版本还没有支持

30、OOP 所有的标准,但很多代码仓库和大型的应用程序(包括 PEAR 库)仅使用 OOP 代码来开发。 使用 PHP,并不局限于输出 HTML。PHP 还能被用来动态输出图像、PDF 文件甚至 Flash 动画(使用 libswf 和 Ming)。能够非常简便的输出文本,例如 XHTML 以及任何其它形式的 XML 文件。PHP 能够自动生成这些文件,在服务端开辟出一块动态内容的缓存,可以直接打印出来,或者存储到文件系统中。 PHP 最强大最显著的特性之一,是它支持很大范围的数据库。利用 PHP 编写数据库支持的网页非常简单。目前,PHP 支持如下数据库,如表2-1所示。表2-1 数据库类型Ad

31、abas DIngresOracle (OCI7 and OCI8)dBaseInterBaseOvrimosEmpressFrontBasePostgreSQLFilePro mSQLSolidHyperwaveDirect MS-SQLSybaseIBM DB2MySQLVelocisInformixODBCUnix dbm此外还有一个 DBX 扩展库,可以自由的使用该扩展库支持任何数据库。另外,PHP 还支持 ODBC,即 Open Database Connection Standard(开放数据库连接标准),因此您可以连接任何其它支持该世界标准的数据库。 PHP 还支持利用诸如 LD

32、AP、IMAP、SNMP、NNTP、POP3、HTTP、COM(Windows 环境)等不计其数的协议的服务。您还可以开放原始网络端口,使得任何其它的协议能够协同工作。PHP 支持和所有 WEB 开发语言之间的 WDDX 复杂数据交换。关于相互连接,PHP 已经支持了对 Java 对象的即时连接,并且可以将他们自由的用作 PHP 对象。甚至可以用CORBA 扩展库来访问远程对象。 PHP 具有极其有效的文本处理特性,支持从 POSIX 扩展或者 Perl 正则表达式到 XML 文档解析。为了解析和访问 XML 文档,支持了 SAX 和 DOM 标准。可以使用XSLT 扩展库来转换 XML 文档

33、。 如果将 PHP 用于电子商务领域,会发现其 Cybercash payment、CyberMUT、VeriSign Payflow Pro 以及 CCVS 函数对于在线交易程序来说是非常有用的16。2.2 WEB服务器Apache介绍Apache HTTP服务器项目,是为了建立和维持一个开放源码的HTTP服务器,为现代操作系统 如UNIX和Windows NT。该项目的目标是提供一个安全、高效和可扩展性强的服务器来提供符合当下HTTP标准的HTTP服务。Apache HTTP自1996年4月一直是最流行的Web服务器在因特网。2005年11月Netcraft公司网站服务器调查发现,超过70

34、%的网站在互联网上使用Apache。Apache服务器的设置文件位于/usr/local/apache/conf/目录下,传统上使用三个配置文件httpd.conf,access.conf和srm.conf,来配置Apache服务器的行为。 httpd.conf提供了最基本的服务器配置,是对守护程序httpd如何运行的技术描述;srm.conf是服务器的资源映射文件,告诉服务器各种文件的MIME类型,以及如何支持这些文件;access.conf用于配置服务器的访问权限,控制不同用户和计算机的访问限制;这三个配置文件控制着服务器的各个方面的特性,因此为了正常运行服务器便需要设置好这三个文件。 除

35、了这三个设置文件之外,Apache还使用mime.types文件用于标识不同文件对应的MIME类型, magic文件设置不同MIME类型文件的一些特殊标识,使得Apache 服务器从文档后缀不能判断出文件的MIME 类型时,能通过文件内容中的这些特殊标记来判断文档的MIME类型。 事实上当前版本的Apache将原来httpd.conf、srm.conf与access.conf中的所有配置参数均放在了一个配置文件httpd.conf中,只是为了与以前的版本兼容的原因(使用这三个设置文件的方式来源于NCSA-httpd),才使用三个配置文件。而提供的access.conf和srm.conf文件中没

36、有具体的设置。 Apache中所有的设置都被放在了httpd.conf中,因此只需要调整这个文件中的设置。不必因为它提供设置的参数太多而烦恼,基本上这些参数都很明确,也可以不加改动运行Apache服务器。但如果需要调整Apache服务器的性能,以及增加对某种特性的支持,就需要了解这些设置参数的含义。 关于Apache服务器的性能,在Internet上存在很大的争议,基本上使用Apache的使用者几乎都不怀疑它的优秀性能,Apache也支撑了很多著名的高负载的网站,但是在商业机构的评测中,Apache往往得分不高。很多人指出,在这些评测中,商业Web服务器及其操作系统往往由其专业公司的工程师进行

37、过性能调整,而Free 的操作系统和Web服务器往往就使用其缺省配置或仅仅作很小的更改。需要指出的是,除了操作系统的性能调整之外,Apache 服务器本身的缺省配置绝不是最优化和最高效的,而是要适应几乎所有种类操作系统、所有种类硬件下的设置,多平台的软件不可能为特定平台和特定硬件提供最优化的缺省配置。因此要使用Apache的时候,性能调整是必不可少的。 在商业评测中忽略了的另一个事实是,评测时往往对不同种类的功能进行比较,例如使用Apache的标准CGI 的性能与ISAPI,NSAPI等服务器端API比较,事实上Apache服务器与此可以比较的功能为modperl ,FastCGI,与ASP类

38、似的功能为PHP等等,只不过由于Apache的开放模式,这些功能是由独立的开发组,作为独立的模块来实现的。但是在评测中,测试人员没有加入相应的模块评测其性能。 启动Apache服务器的另一种方式是inet方式,使用超级服务器inetd监视连接请求并启动服务器。当需要使用inetd启动方式时,便需要更改为这个设置,并屏蔽/etc/rc.d/rc.local/init.d/apache文件,以及更改/etc/inetd.conf并重起inetd,那么Apache就能从inetd中启动了。 两种方式的区别是独立方式是由服务器自身管理自己的启动进程,这样在启动时能立即启动服务器的多个副本,每个副本都驻

39、留在内存中,一有连接请求不需要生成子进程就可以立即进行处理,对于客户浏览器的请求反应更快,性能较高。而 inetd方式要由inetd发现有连接请求后才去启动http服务器,由于inetd 要监听太多的端口,因此反应较慢、效率较低,但节约了没有连接请求时Web服务器占用的资源。因此inetd方式只用于偶尔被访问并且不要求访问速度的服务器上。事实上inetd方式不适合http的突发和多连接的特性,因为一个页面可能包含多个图象,而每个图象都会引起一个连接请求,即使虽然访问人数造成教少,但瞬间的连接请求并不少,这就受到inetd性能的限制,甚至会影响由inetd启动的其他服务器程序。 在使用子进程处理

40、HTTP请求的Web服务器上,由于要首先生成子进程才能处理客户的请求,因此反应时间就有一点延迟。但是,Apache服务器使用了一个特殊技术来摆脱这个问题,这就是预先生成多个空余的子进程驻留在系统中,一旦有请求出现,就立即使用这些空余的子进程进行处理,这样就不存在生成子进程造成的延迟了。在运行中随着客户请求的增多,启动的子进程会随之增多,但这些服务器副本在处理完一次HTTP请求之后并不立即退出,而是停留在计算机中等待下次请求。但是空余的子进程副本不能光增加不减少,太多的空余子进程没有处理任务,也占用服务器的处理能力,因此也要限制空余副本的数量,使其保持一个合适的数量,使得既能及时回应客户请求,又

41、能减少不必要的进程数量。 Apache服务器的一个重要特性就是其模块化的结构,这不但表现为其能在编译时能通过新的模块加入新的功能,还表现为其模块可以动态加载入http服务程序中,而不必载入不需要的模块。使用Apache的动态加载模块只需要设置好Load Module和AddModule参数就可以了,这种特性就是Apache的 DSO(Dynamic Shared Object)特性,然而要想充分使用DSO特性仍然不是一个简单的事情,不适当的改动这里的设置就可能造成服务器不能正常启动。因此如果不是要增加或减少服务器提供的功能,就不要改动这里的设置。 Linux下的缺省Apache服务器支持的模块

42、,事实上很多模块是没有必要的,不必要模块不会被载入内存。模块可以静态连接到pache 服务器内部,也可以这样动态加载,将Apache的特性都编译成动态可加载模块是该Port的做法,而不是Apache的缺省做法,这样就以牺牲很小的性能的同时,带来极大的灵活性。 因而动态可加载的能力还是对性能有轻微的影响,因此可以重新编译Apache,将自己所需要的功能编译进Apache 服务器内部,可以让系统显得更为干净,效率也有轻微的提高。通常仅仅为了这一个目的就重新编译Apache是没有必要的,如果需要增加其他特性而重新编译Apache,不妨在增加其他模块的同时将所有的模块都静态连接入Apache 服务器。

43、有的使用者更喜欢动态加载模块,那么也不妨全部都使用动态加载模块。 Apache有非常好的跨平台性。为了实现这一目标和简化模块编写者的负担,Apache完成了许多基本的功能如IO, 内存分配等,这些接口都是与具体平台无关的。还有一些很有用的例程如: hash table, array 等。在整个体系中,Apache有一个基本点,它尽可能的使用简单的结构和算法,这不仅易于理解和维护,还提高了它的稳定性。在UNIX系统上,Apache采用了多进程模型,在Window上采用了多线程模型。多进程模型中,其子进程处理客户请求,父进程用于管理子进程。 当系统过载时父进程会再启动几个子进程,当系统空闲时,父进

44、程会杀掉几个子进程。子进程的数目在MinSpareServers和MaxSpareServers之间。而且每个子进程处理的请求个数也是有限制的,这可以解决诸如内存泄漏等问题。所有的进程状态都被记录在share memory中。由于每个进程的状态记录在其中的一小块内存上,它通常也只读写这一块内存,因此,Apache没有使用什么同步机制。2.3 数据库服务器MySQLMySQL是最流行的开放源码SQL数据库管理系统,它是由MySQL AB公司开发、发布并支持的。MySQL AB是由多名MySQL开发人创办的一家商业公司,是一家第二代开放源码公司,结合了开放源码价值取向、方法 和成功的商业模型。My

45、SQL是一种数据库管理系统。数据库是数据的结构化集合。它可以是任何东西,从简单的购物清单到画展,或企业网络中的海量信息。要想将数据添加到数据库,或访问、处理计算机数据库中保存的数据,需要使用数据库管理系统,如MySQL服务器。计算机是处理大量数据的理想工具,因此,数据库管理系统在计算方面扮演着关键的中心角色,或是作为独立的实用工具,或是作为其他应用程序的组成部分。MySQL是一种关联数据库管理系统。关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大的仓库内。这样就增加了速度并提高了灵活性。MySQL的SQL指得是“结构化查询语言”。SQL是用于访问数据库的最常用标准化语言,它是由AN

46、SI/ISO SQL标准定义的。SQL标准自1986年以来不断演化发展,有数种版本。MySQL软件是一种开放源码软件。 “开放源码”意味着任何人都能使用和改变软件。任何人都能从Internet下载MySQL软件,而无需支付任何费用。如果愿意可以研究源码并进行恰当的更改,以满足需求。MySQL软件采用了GPL(GNU通用公共许可证),http:/www.fsf.org/licenses/,定义了在不同情况下可以用软件作的事和不可作的事。MySQL服务器最初是为处理大型数据库而开发的,与已有的解决方案相比,它的速度更快,多年以来,它已成功用于众多要求很高的生产环境。尽管MySQL始终在不断发展,但

47、目前MySQL服务器已能提供丰富和有用的功能。它具有良好的连通性、速度和安全性,这使的MySQL十分适合于访问Internet上的数据库。 MySQL数据库软件是一种客户端/服务器系统,由支持不同后端的1个多线程SQL服务器,数种不同的客户端程序和库,众多管理工具和广泛的应用编程接口API组成。还能以嵌入式多线程库的形式提供MySQL服务器,你可以将其链接到你的应用程序,从而获得更小、更快、和更易管理的产品。MySQL是一个真正的多用户、多线程SQL数据库服务器。SQL(结构化查询语言)是世界上最流行的和标准化的数据库语言。MySQL是以一个客户机/服务器结构的实现,它由一个服务器守护程序my

48、sqld和很多不同的客户程序和库组成。SQL是一种标准化的语言,它使得存储、更新和存取信息更容易。MySQL 主要目标是快速、健壮和易用。最初是因为需要这样一个SQL服务器,它能处理与任何可不昂贵硬件平台上提供数据库的厂家在一个数量级上的大型数据库,但速度更快,MySQL就开发出来。自1996年以来,一直都在使用MySQL,其环境有超过 40 个数据库,包含 10,000个表,其中500多个表超过7百万行。MySQL以多层结构和不同的独立模块编写,ISAM表处理器-稳定。 它管理所有在MySQL 3.22和早期版本中的数据的存储和检索。在所有MySQL版本中,代码中已经没有一个单独(报告的)错误。得到一个损坏的数据库表的唯一已知方法是在一个更新中途杀死服务器,即使这样也不大可能破坏任何数据而不能挽救,因为所有数据在每个查询之间被倒入(flush)到磁盘,而且从来没有一个有关由于MySQL中的错误而丢失数据的错误报告。 MySQL优点:一般版本免费(但商业用的还是要付费);体积小,资料档案容量小

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1