网站技术设计完全手册(上)
2000-08-17 11:10:37
World Wide Web (WWW) 的诞生在某种意义上,提供了一个低成本的内容发行渠道,但是
“低成本”却不能意味着“低质量”。恰恰相反,正因为互联网络使得信息内容的发行成本降低了,所以更应该在内容的呈献上花力气、花本钱,大做文章,做得更好。
网站内容呈献是网站开发的一项重点,它最直接影响到一个网站的受欢迎程度。最起码的要求,是用户必须能有效地使用网站和浏览网站的内容。
内容呈献除了直接与网页的版面和图像设计有关之外,更深一层的是与网站的技术结构设计相联系的。尤其是目前静止网页的用途已降到次要位置,网页的内容均以交互方式呈现。交互方式代表的并不只是网页语言HTML的延伸,交互方式的实现需要网页背后网站服务器的大量软件支持。
网站用户代表的是一个以几何级数膨胀的群体。据统计,中国互联网用户每半年翻一翻。如何在保证网站高性能的前提下,不断满足越来越多用户的需求。这一问题从另一角度来理解,将牵涉到网站内部结构的规划、设计、扩展与系统维护。
电子商务在全球刚刚起步,在中国由于环境还不成熟,电子商务仍然起步艰难,但却普遍相信,这将是必然的趋势。电子商务将使我们每人越来越依靠我们的“用户名”和“密码”,我们的数码身份一旦被盗后果不堪设想。所以,网站的安全管理是刻不容缓的。
本文围绕着网站的可使用性展开,并对所牵涉的网站技术的上层结构的几个方面进行阐述,这主要包括网站性能、可扩展性、可用性、可维护性和网站的安全管理等几方面。
◆网站的上层结构
网站技术到目前已发展为相当复杂的技术。这一技术融汇了TCP/IP网络技术、客户/服务器计算模式、数据库、安全管理、Java技术、计算机图形学和用户界面设计等等。
众所周知,网站是建立在TCP/IP网络协议之上的服务程序,TCP/IP提供了一种通用的可靠数据信息传递服务。在此之上, HTTP协议则提供了网站运转最直接使用的功能——它可靠地把服务器的网页传递给网络另一端的网站用户。除此之外,HTTP还可以把网站用户输入的信息传送到服务器。在HTTP协议以上便是网站设计师的天地,也就是本文要谈的网站的上层结构。
仔细讨论每一功能块的技术功能并非本文的目的。粗略而言,外界要进网站必须先经过防火墙、安全服务器和目录服务器直接支持防火墙的运作。通过防火墙后,外界用户的信息被HTTP服务器接收。如果用户要求的只是一幅网页,HTTP服务器将直接从文件服务器中提取所需网页传送给用户。如果用户信息包含进一步探访要求,HTTP服务器将求助于CGI服务器,CGI代表的是“公共网关界面”,CGI服务器存放着处理各种用户探访的软件,它在处理完用户探访之后,把结果送还给HTTP服务器,再传送回给用户。但更多情况,CGI服务器会相继唤起各类应用服务器来为用户服务。
从上图可见几种广泛使用的应用服务器,不同服务器可以设置在同一台计算机上,或由不同的机器来承担。不同的机器之间需要用网络来连接,一种服务亦可由多台机器来承担。例如,为分配处理量,用户名从A-M和N-Z的电子邮件由两台服务器来分担。
网站上层的设计工作包括各个服务器功能具体细节定义,服务器的组织形式,容量规划,网站内部结构扩展路径,可用性考虑和安全管理策略。
◆网站的可使用性
网站必须设计得易于使用,网站不能只是信息的简单堆砌。这一要求最直接地与网站的版面设计和服务器的功能定义相关联。随着商业化网站的增加和发展,人们慢慢总结出一些网站可使用性方面的要求,但在很大程度上,人们对可使用性的了解仍处于启蒙阶段。所以,这里只能列出一些在网站设计中该做和不该做的,还谈不上任何完整的指导。
1.网站的可使用性
网站的可使用性包括了以下几点:
(1)网站要有好的导航功能,以便读者游徊。
譬如,每一网页都应能链接到网站的主页,和逻辑上的前页后页、上页下页,当网站网页数目超过100页时,考虑提供搜索引擎服务。
(2)网站网页要有好的被检索设计。
上面提到,大型网站要提供检索功能,为了让检索出来的结果真切地反映网页内容的相关性,应该用简洁明了的文字来撰写网页的题目和标题。同时注意用好网页最前面的二三十个文字,以期最精华地反映网页的内容。因为,搜索引擎也将摘录网页的这部分再现给用户。
除此之外,应定义好网页的关键词,以增大被检索到的概率。
(3) 网页要有可读性。
网页需要有结构,尤其是长篇的网页,可以考虑把长篇的网页分开成多幅,或者提供网页之内的捷径链接,使用户可以很快地跳跃过部分篇幅。有节制地使用网页上的动感画面和动感标题,因为过度使用将影响用户阅读。
注意图像编辑、色调、色彩与剪裁,使其与总体相称。
留意网页的下载速度。再好的网页,如果需要超过10秒钟下载时间,也将会失去观众。网页的下载速度将牵涉到下面要谈论的网站高性能问题,但在网站容量恒定的情况下,注意网页图像文件的多少和大小是控制网页下载速度最有效办法。
(4)网站应能让用户达到其专门的使用目的。
这可以说是一个笼统的题目,其中包含了广泛的话题。譬如说,用户在使用网站的电子邮件功能,几方面将影响其使用效率。第一,用户界面的设计;第二,电子邮件服务器的响应时间和处理速度;第三,网络传送的速度;第四,网站和应用软件的可靠性。除了用户界面设计与以上讨论紧密联系之外,其他方面都将在以下具体讨论。这个例子说明,网站的可用性,其实牵动了网站技术结构的总体。
2. 网站的交互性
交互性网站是网站发展的主流趋势。通过网站的交互有人对机和人对人两种。人对机交互,例如有网上多媒体点歌播放、在线购物、订票。这种交互性增强了网站的综合实体的感觉,仿佛日常所做的一切事情都可以在网站上完成。人对人的交互,有电子邮件、BBS、聊天室等等。利用网站的交互性,可以为用户提供一个大家庭的氛围,大家可以在网上结群、聊天。
网站设计应提供足够的交互渠道,最起码的要提供电子邮件、BBS、聊天(上接18版) 室等应用,在网站上设反馈信箱。同时注意融汇新的交互技术与手段,例如,美国“美国在线”公司研制的立时邮差,可以自动探寻和某一用户同时在网站内的朋友,以帮助他们联系上。又如,最早的电子邮件只能发送纯文本文件,现在已可以发送网页、图像、软件等。而最新的趋势是,电子邮件将与用户的手机、家里办公室的留言机连在一起,手机和留言机的信息都可以用电子邮件传送。
在入机交互方面亦有新的技术发展。一直以来,人机交互受到网络带宽和计算机功能的限制,这方面正在逐渐得到缓解。尤其高性能PC机的造价已可接受,其性能可支持下载多媒体文件的同步播放。新的媒体技术使多媒体文件得到压缩,而又不损失视听质量。这方面,MP3音乐格式是最新的发明,这类的技术也将融汇到网站的内容里面来,使网站的人机交互更为丰富。
另一趋势是,人机交互与人人交互将越来越并行使用。例如,当用户使用网上订票服务时,用户有需要因票务与航空公司直接联系。这种情况下,如果用户上网已占用了电话线,则最理想的解决办法是通过IP电话。一种技术设想是,在网页上设置一个电话按钮。它可以是一个JAVA APPLET,背后连通到IP电话的协议界面,从而支持实时的人机与人人交互。
值得注意的是,网站的交互应用,大大地增加了对网站处理功能、存储容量、网络带宽的要求,内部结构设计要相应地调整。这些下面会专门的讨论。
◆高性能网站与网站可扩展性
在以上讨论网站的可使用性时,也提到了一个网站所必须具备的高性能。更具体地说,高性能可以用以下几方面来衡量:
* 响应时间
* 处理时间
* 用户平均等待时间
* 系统输出量
网站技术结构设计的目标之一便是高性能, 即系统输出量大、响应快、处理及时,而用户平均等待时间短的系统。
1.如何提高网站的性能
提高网站性能的技术步骤开始于网站建设的起始。首先第一步是容量计划。容量计划是根据网站需要应付的用户数目及网站应用所需的计算处理量,来确定网站首期(和二期)所需的服务器计算功率、内存及存储容量和网站连接上互联网的速度及相应的网络设备要求。
在确定了用户数目和所支持的应用范围之后,就可以设计出合理的服务器群组织结构和网络连接方式。这一技术步骤最有想像余地,有很多因素需要思考,该步骤对网站最终性能有决定性的影响。这一技术步骤也没有现成的方法去拷贝,很大程度上需要想象力,在此仅提出以下要考虑的问题。
(1)独立式超级服务器与多台分布式服务器群的选择。
尽管标题中后者,多台分功能服务器群渐渐成为网站服务器内部结构的首选,但还是值得一提其中牵涉的技术问题。
网站上层由所示几大功能块组成
独立式超级服务器集多项网站处理功能于一身,可以伺服每秒上千次网站访问,具有容易管理的优点。同时超能计算机的制造技术已使这类服务器的可靠性相当高,达到近99.9%的可用性。另外,这类服务器亦有相当的可维护性,硬件添加在一定范围内可以不用关机。但使用独立式服务器的缺点是,价格昂贵,尤其在性能价格比上逊于分布式服务器;存在单一故障点,只要独立服务器一出问题,整个网站即告下网。
多台分布式服务器群采纳了分布系统策略。每台服务器并不超能,但因为多台服务器可以并行工作,使总体处理速度加快。因为,每台服务器价钱不贵,设置冗余服务器的成本并不高。冗余服务器在正常运行情况下,亦分担计算处理量,只是当主要服务器出故障,或需要维修时才转换到冗余服务器上。冗余服务器的设置既增加整体系统的可靠性,亦增强了系统的处理能力。
现今网站技术起源和发展基本基于成熟的“客户-服务器”计算模型。“顾客”软件较为单薄,重头戏都在服务器上。随着网站技术的发展,一个网站将要融汇越来越多的新型服务器。在分布式服务器群里添加新的服务器以运行新型服务器软件,比在现有的独立式服务器上再运行额外的服务器软件似乎更合理。
但与单台超能服务器相比,多台分功能服务器群结构多了内部网络连接的额外要求,需要有相应财政和工程管理人员的支持。对于服务器群的网络连接下面再作讨论。 (待续)
摘自《赛迪网》 孙路/文 |
404 Not Found
404 Not Found
nginx
|
|