预览加载中,请您耐心等待几秒...
1/5
2/5
3/5
4/5
5/5

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

基于云计算的天气预报系统实现 摘要:利用云计算技术,整合网络中云资源,实现天气预报系统,特别是利用GoogleMap做为信息集成的载体。关键词:天气预报;云计算 云计算是一种新兴的共享基础架构的方法,它可以将巨大的系统池连接在一起以提供各种IT服务。很多因素推动了对这类环境的需求,其中包括连接设备、实时HYPERLINK"http://qkzz.net/magazine/1006-5954"\t"_blank"数据流、SOA的采用以及搜索、开放协作、HYPERLINK"http://qkzz.net/magazine/1004-8804"\t"_blank"社会网络和移动商务等这样的Web2.0应用的急剧增长。1理论基础和系统结构云计算的基本原理是,通过使计算分布在大量的分布式计算机上,而非本地计算机或远程服务器中,企业数据中心的运行将更与互联网相似。这使得企业能够将资源切换到需要的应用上,根据需求访问计算机和存储系统见图1。Google云计算有4个突出特点:(1)应用全部迁移向互联网,省去了安装软件,升级维护软件的麻烦,同时也有利于协作。(2)数据全部迁移向互联网,目前个人PC饱受网络病毒骚扰,将个人信息托管到网上更健壮的平台相对更安全。(3)计算能力全部迁移到网上,只需要一个浏览器就可以接入互联网访问所有的应用,省去购买很贵的PC、操作系统和应用软件成本。(4)存储空间全部迁移到网上。目前信息大爆炸,即使是TB级存储已经进入个人,但仍然不能满足需求,所以大量数据存到网上是一个不错的选择。从系统结构的构成(图2)可以看到,客户端向服务器发送去请求的时候,服务器直接把客户端的请求转发到“云”中,服务器不做任何的计算任务,只是调用“云”的服务,这样可以完全免除服务器方面的计算负载,Google只给出云计算的接口,而我们只管调用,不用关心其背后的实现方式。2系统的实现2.1系统实现技术本系统使用了四朵“云”,来实现计算功能,分别是MaxMind,Weather.com,Google,Yahoo。下面对四朵“云”分别进行说明。2.1.1MaxMindMaxMind提供的功能就是把IP地址转化成地理位置,在国内比较熟悉的IP地理位置数据库就是纯真IP数据库。实际上IP和地理位置的的关系比较简单,因为IP地址的分配都是根据地域来分配的,这样就为根据IP地址来查询地理位置提供了方便.笔者在分析纯真IP数据库的时候,发现这个数据库是二进制格式,在不知道文件格式的情况下不能转化成真正有用的数据库,同时这样的数据库也不提供经纬度坐标,所以就不能用于IP地理位置的可视化系统。MaxMind却可以弥补这样的缺陷,MaxMind为我们提供了基于GPL协议的GeoLiteCity数据库,这个数据库有两中格式,一种是CSV格式,可以便于导入数据库;另一种是二进制格式,可以用编程语言对数据库进行操作。同时MaxMind还为这些数据库提供了丰富的API,包括C,Perl,PHP,ApacheModule,Java,Python,C#,Ruby,MSCOMObject,VB.NET,Pascal,Javascript。这里我们选择了Javascript,因为它不会给服务器添加任何的负担。代码如下:<scriptlanguage=“JavaScript”src=“http://j.maxmind.com/app/geoip.js”></script><br>CountryCode:<scriptlanguage=“JavaScript”>document.write(geoip_country_code());</script><br>CountryName:<scriptlanguage=“JavaScript”>document.write(geoip_country_name());</script> <br>City:<scriptlanguage=“JavaScript”>document.write(geoip_city());</script><br>Region:<scriptlanguage=“JavaScript”>document.write(geoip_region());</script><br>Latitude:<scriptlanguage=“JavaScript”>document.write(geoip_latitude());</script><br>Longitude:<scriptlanguage=“JavaScript”>document.write(geoip_longitude());</script>其中:geoip_country_code:国家代码,如中国为CN;geoip_country_name