服务器诊所:鲜为人知但很有用的观念
2009-05-13 01:07:28来源:未知 阅读 ()
简单的条形图
另一位读者问到了Expect是否也可以完成诸如通过公共网关接口(commongatewayinterface(CGI))在Web页上显示条形图之类的工作。事实上,那是很简单的一种工作;十行代码就绰绰有余了。不过,知道这种技术的人并不多。而且,很多人还错误地认为这种技术只适合用Perl进行编码。
我至少知道八种把条形图放到Web页上的方法,这八种方法在体系结构上有明显差异。用得最广泛的一种方法大概是在1994年年底出现的,也就是在同年10月Netscape的版本0.9beta测试发行版使得“膨胀技巧(dilationtrick)”可以实现之后。尽管这种方法现在已经用得不多,但我仍然觉得它最好地结合了对许多浏览器的兼容和轻量的服务器负载。DaveSiegel是一名Web设计师,他公开了这一技术和相关的“单像素”技术,而RobertM.Free则以“GIF*DOT”为商标名称做了几乎相同的事情。另外,MalSutherland在他的Web开发(WebDevelopment)系列中讲授了单像素技术。
最简单的膨胀代码产生诸如图1所示的结果。您可以用Expect编写其代码,如下所示:
清单1.barchart_expect.cgi的源代码
#!/usr/local/bin/expect
puts"Content-type:text/html\n"
#Thisisjustanimageofasinglebluepixel.
setbluehttp://starbase.neosoft.com/~claird/tmp/blue.gif
puts"
setheights_to_chart[list100103020705988116662] foreachheight$heights_to_chart{ puts" } puts 要使这些条块“可单击”,要添加图例说明,要通过动态计算进行着色,等等,这些事情再添加几行代码就可以做到。但是,重要的一点是要认识到,从本质上说,任何语言—C、sh和Ruby,当然还有Expect、Icon以及汇编语言—都可以生成这些图形。下次当您需要快速显示条形图时,请使用膨胀技术和您钟爱的语言以服务器端Web生成的方式来完成。 监视程序 Expect与其它服务器端语言都具有的另一个功能是构造Web“监视程序”。 您是否曾经需要通过Web应用程序监视远程变量?举例来说,您可能在访问一个天气站点,为了确保您看到的温度是比较现时的,于是您每隔几分钟就单击“重新装载(reload)”或“刷新(refresh)”。 毫无疑问,这种办法很不好。每次您进行刷新时,浏览器就会空白一片,至少会短时间如此。您希望的不是让那令人烦恼的一片空白来分散您的注意力,而是希望Web页保持不变,并只去更新一个文本元素或一张图。例如,能看得见的效果可能是,当服务器负载超过了某个阈值时将绿色改成红色,或者是显示最近接通的三个电话号码,或者是显示某个大型生产过程中最近分析过的蛋白质序列。 尽管很多开发者都想要这样一个应用程序(我已经做出了四种不同的解决方案),但似乎很少Web工作者知道如何为他们自己编写此类监视程序的代码。我最满意的是一个我称之为“DOM2监视程序(DOM2monitor)”的解决方案。它依靠客户机端JavaScript的功能来更新DOM节点的data属性。 在“服务器诊所”的这一部分和以后的部分中,我通常会通过几种不同的语言反复分析一些示例。虽然我最先是用Expect编写DOM2监视程序,但随后的实例将使用Python来编写,这只是为了强调其中的这些观念适用于很多不同的语言。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com "
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 如何监控 Linux 服务器状态? 2020-06-06
- 简单安装配置samba服务器 2020-06-03
- Xshell如何配置并远程连接Linux服务器详解 2020-05-31
- ubuntu18.04.4 配置 NFS 服务器 2020-05-31
- 内部服务器错误Internal server error解决方法 2020-05-31
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash