基于平台的云端旅游导向实时管理系统仿真

2015-12-26 08:05熊淑平
河北软件职业技术学院学报 2015年1期
关键词:海量视图云端

熊淑平

(黄冈职业技术学院,湖北 黄冈 438002)

基于平台的云端旅游导向实时管理系统仿真

熊淑平

(黄冈职业技术学院,湖北 黄冈 438002)

整合云端导向海量分布式运算与平台的移动通讯设备GPS定位等技术,模拟制作应用于手机式设备的导游领队管理系统。系统能根据GPS定位,提供app应用程序,给旅行社提供必要的信息至云端后台,经海量分布式运算供后续撷取运用。

云端;平台;智能型手机;实时管理

0 引言

目前,由于旅游景点的移动网络及设备匮乏,一直无法针对旅游业建置一套完善的手机式管理系统,以至于遇到突发情况会手足无措,因此本文以辅助旅游业为出发点,以人人配置的手机通讯设备为系统需求组件,设计开发了导游领队管理系统。系统结合了3G智能型手机、GPS定位功能以及云端运算服务,针对旅行社、导游领队、游客三方设计而成。由于出国旅游所衍生的问题可能牵扯到许多层面,各个环节息息相关,本系统尽量纳入可能的衍生问题,提供如交通、食宿联系、额外行程、紧急情况处理等各项安排,以期满足旅行社、导游领队、游客三方需求,创造三赢的旅游服务。系统提供与以往不同的旅游方式,将科技与旅游业相结合,营造良好的旅游环境,追求更安全便捷的服务,通过科技的力量、创新的思维来打破旅游既有僵化观念,改善并提升旅游质量。

1 Android系统

Android是基于Linux内核的软件平台和操作系统,是Google在2007年11月5日公布的手机系统平台,早期由Google开发,后由开放手机联盟(Open HandsetAlliance)开发。Android系统架构如图1所示。

图1 Android系统架构

2 云端运算

云端运算是一种概念的延伸,它可以让使用者在任何时间、任何地点都能通过联机装置上的云端应用程序,存取数据并取得需要大量运算的系统资源,获取相关的服务。一般云端运算需具备以下条件:一是存取资源要保持高可靠性(例如:不断线),速度上也必须够迅速;二是计算机资源必须够大,能够按照使用者需求分配资源并且各使用者之间不会相互影响;三是使用者不必知道云端计算机资源内部的细节,只需要明确所需的资源用量并付费即可;四是付费机制要合理,否则会影响使用者使用意愿。

2.1 云端运算五大服务特征

云端系统主动控制和优化资源使用,通过一种测量能力,在某层级的抽象上用于适合的服务类型(例如储存、处理、频宽和活跃用户账户)。资源使用可被监测、被控制和被报告,为供应者和消费者提供使用服务情况的信息。一是随使用者需求自助服务。依照使用者的需求自行申请增加或减少资源。二是随时随地用任何网络装置存取。让使用者在任何时间、任何地点都可以通过联机装置上的云端应用程序存取数据并取得需要大量运算的系统资源,获取相关的服务。三是多人共享的弹性运算资源,同一台服务器可划分出多个区块配置给多个使用者使用。四是快速且具灵活弹性的重新能力具备快速重新配置资源的特性,以供使用者需求。五是服务资源、使用量等可被监控与测量。

2.2 云端运算四大模式

云端运算按照供货商和使用者所属关系将云端运算部属分为四大类,即公用云、私有云、社群云和混合云。

(1)私有云(Private Cloud)。资料中心是建置在企业内部的IT维护,由企业自行负责,但也拥有云端的各种特性。

(2)社群云(Community Cloud)。当不同组织利用相同的协议以及架构合作时,彼此的云就会组成一个社群并且彼此共享资源,此时不论是哪个组织的私有云或公有云都能够共享并存取对方的资源。

(3)公有云(Public Cloud)。所有资料都摆放在云端供货商所建设的数据中心,能够利用数据中心的软硬件以及网络将使用者的应用程序或服务网向外界展现,并且依照使用者所使用的运算量、储存量以及网络使用量来计算费用。

(4)混合云(Hybrid Cloud)。类似公有云加上私有云的特性,且具有公有云与私有云间沟通桥梁的功用。

2.3 云端运算三大服务模式

2.3.1 基础架构服务模式(Infrastructure as a Service,IaaS)

(1)在这种模式下,消费者使用基础运算资源,如处理能力、存储空间、网络元件或中介软件,能够掌握作业系统,存储空间、已部署的应用程序及网络元件,但不用管理或控制底层的云基础设施,包括网络、服务器、操作系统、储存、甚至个人的应用功能,伴随有限的特定用户应用程序配置设置可能的例外。

(2)根据用户需求,软件供货商将软件或应用通过租赁的方式提供给用户。

2.3.2 平台服务模式(Platform as a Service,PaaS)

(1)这种模式下,使用供货商提供的编程语言和工具,部署到由消费者创建的或是为获取应用创建的云计算基础设施。消费者不管理或控制的底层的云基础设施,包括网络、服务器、操作系统、或储存,但控制部署的应用程序和存取环境配置的可能应用。

(2)提供丰富的云中介软件,包含应用容器、数据库和信息处理,使软件开发人员可以充分利用这些开放资源来开发客制化的应用。

2.3.3 软件服务模式(Software as a Service,SaaS)

(1)这种模式下,供货商提供处理、存储、网络和其它基本的运算资源,消费者可以部署和运行任意软件,它可以包括操作系统和应用程序。消费者不管理或控制底层的云基础设施,但在操作控制系统、储存、部署的应用程序,以及可能有限的控制选择网络组件(例如主机防火墙)。

(2)用户不需要购买、维护软硬件可以直接在基础架构上建立自己的平台和应用。

2.4 云端运算技术

云端运算中会使用到的关键技术包括虚拟化技术、海量数据处理、海量分布式运算、自治管理以及多租户等不同的重要技术。现将与系统相关的海量数据处理及海量分布式运算说明如下:

(1)海量分布式数据处理。Google文件系统(Google File System,GFS)就是海量分布式数据处理的范例。GFS是Google为了满足公司需求而开发的分布式文件系统,可运作在一般的X86主机上,专为Google的核心数据及页面搜寻的储存进行了优化,并提高容错能力,因而可以提供大用户总体性能最高的存取和运算服务。Google文件系统架构,是由GFS Master Server和GFS Chunk Server组成,如图2所示。其中GFS Master Server是索引服务器的角色,拥有文件树状目录以及文件储存区块位置的信息;GFS ChunkServer是储存服务器的角色,它和储存区与储存设备连接,并且储存数据的每一个区块前端的API呼叫会通过GFS Master Server取得储存位置,然后由GFS Chunk Server取出数据。

(2)海量分布式运算。到了云端运算的时代,在数据中心内容纳了几万台以上的实体服务器,相当于几百万台虚拟机器,如此庞大的运算资源,极适合用来进行分布式运算,而若工作被分散到数以百计的服务器执行时,即被称为海量分布式运算(Distributed MassComputing),海量分布式运算最知名的就是MapReduce分布式计算架构。MapReduce分布式计算架构能大量处理资料或要求的工作,通常会采用大量分布式的运算方式来处理。MapReduce分布式计算架构主要是将一份工作切割成数个细小的单元(map),经过不同的机器或运算资源处理后,再经由工作的组合(reduce),以得到最后结果。MapReduce分布式计算架构的基本算法格式如表1所示。

图2 Google File System架构图

表1 MapReduce分布式计算架构的基本算法格式

3 云端旅游导向移动通讯设备实时管理系统

本系统主要分为游客、导游领队、旅行社前台与后台三个子系统,都部署在云端上,拥有稳定的质量并能保持高可用性。游客端是3G智能型手机的应用程序,拥有集合地点查询、紧急求救、行程表查询、额外行程查询、汇率兑换、实时投诉等功能,并且能够定时抓取GPS信息回传给旅行社后台,能帮助游客解决在旅行途中经常会遇到的问题,例如:迷路、受伤、遭窃、忘记后续行程、遇到纠纷等等。导游领队终端是3G智能型手机的应用程序,拥有行程管理(设定集合地点、行程表查询)、危机管理(紧急求救、寻找附近警察局、寻找附近医院)、住宿餐厅查询(查询合作住宿餐厅、查询附近住宿餐厅)、额外行程管理(设定与查询)等功能,并且能够定时获取GPS信息回传给旅行社,能提供导游领队在带团过程中,意外状况处理的功能,例如:饭店客满、游客受伤、失窃、额外行程集合前的不便等等。旅行社端是云端的网站应用程序,拥有前台(查询行程、订购行程)、后台(游客GPS查寻、旅行团GPS追踪、紧急求救系统、游客实时投诉管理)等多项服务,让旅行社可以方便管理整个出团情况。

图3 系统示意图

4 移动通讯设备的Google Map的GPS定位与开发

4.1 Google Map的GPS定位与应用

开发Google Map应用时,在开启系统时必须选择Google APIs。

由于Google Map服务需要存取网络路同时也需要使用Google Map API,故必须在Android Manifest.xml中指定要加入的函数库,同时开放网路使用权。

若要通过Map View来使用Google Map服务,必须使用在Google上注册的密钥,否则无法显示地图,此代码放置于res/layout/main.xml中。

Android:apiKey=”0I9WW4HR7DmT3QStiOgzj-Gy6HCC-71qs5byLCuA”

要取得GPS位置必须使用LocationListener以及LocationListener类别来得知。首先使用getSys-temService来取得LOCATION_SERVICE相关讯息。

接着建立一个LocationListener来监听位置变化,当使用者位置改变则呼叫onLocationChange(Location newLocation),即改变地理位置。

Android位置服务的两个重要类别是LocationManager(位置管理)和 LocationProvider(位置提供)。LocationManager位于 Android.location套件,允许我们定位设备,追踪和趋近提示等,可由Context.getSystemService(Context.LOCATION_SERVICE)方法取得类别的实例。

LocationProvider用来描述位置提供者,以及设定位置提供者的一些属性。可利用Criteria类别为LocationProvider设定条件,以便取得合适的LocationProvider,Location在Android中算是重要的类别,包含各种位置及相关服务,例如:气象信息、经纬度详细数据、以及移动速度等。本文研究的经纬度计算不是用平面坐标,而是用球面坐标,所以用经纬度计算两点之间的距离是计算球面上两点间最短的距离,又称为大圆距离,公式如下所示:

其中φ代表Latitude纬度,λ代表Longtitude经度,R则是地球平均半径为6 371公里。

4.2 地图视图

4.2.1 卫星视图

GoogleMaps提供给Android开发者卫星视图样式,该视图将卫星图片作为MapView中显示的对象。这种视图的优点是形象、一目了然,缺点是地图显示、更新时间较长。图4为本系统的卫星视图。

图4 卫星视图

4.2.2 地形视图

图5 通过手机上的GPS定位定时回传

使用者选择所要找寻的团名,就会出现该团所有成员所在位置的图标,点击图标会显示游客姓名、电话号码、坐标、血型、紧急联络人以及紧急联络人电话等。图5为通过手机上的GPS定位定时回传图。

5 结论

本文在Android操作系统的智能机上实现了GPS的应用开发,利用终端各功能模块的整合,配合相应的软件驱动,完成指定的功能,如对定位信息进行数据处理等。GPS系统具有全天候、全球覆盖、三维定速、定时、高精度、快速、省时、高效率、应用广泛、多功能等特点,因此可广泛应用于陆地、海洋以及航空航天等各种环境下。而实时的Google Map地图的使用,更能直观地将丰富的城市地图、全国的公路网图等地理信息同步地在智能手机上显示出来,方便使用者进行查询参考,这是以后Android GPS应用开发的重要发展方向。

[1]张莉.机电一体化创新实验的实践与发展思考[J].广东工业大学学报,2008(7).

[2]赵梅花.高校机电一体化专业课程设置及实验实训基地建设[J].职业技术教育,2006(23).

[3]袁嫣红.机电一体化综合设计性实验方法及装置的研究[J].浙江理工大学学报,2008(3).

An Emulating Real-time based Mobile Tour Guide Management System over the Cloud

XIONG Shu-ping
(Huanggang Polytechnic,Hubei Huanggang 438002,China)

Mobile tour guide management system is made by massive cloud-oriented distributed computing platform and GPS.With GPS positioning data the travel agency downloads a specified mobile app to tour guide and put necessary information in the request between each other via the cloud.The system computes and analyzes information and then to take a relative response to previous request.

cloud;platform;intelligent mobile phone;mobil management

TP311.52

A

2014-09-30

熊淑平(1971-),女,湖北黄冈人,讲师,主要从事电子技术应用维修研究。

猜你喜欢
海量视图云端
一种傅里叶域海量数据高速谱聚类方法
云端之城
海量快递垃圾正在“围城”——“绿色快递”势在必行
5.3 视图与投影
视图
Y—20重型运输机多视图
SA2型76毫米车载高炮多视图
行走在云端
云端创意
一个图形所蕴含的“海量”巧题