智慧停车项目技术方案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
智慧停车项目技术方案
系统功能分析
智慧停车旨在为用户更快速的找到停车位,其应用分为移动端与服务端。服务端的服务对象是内部管理人员,在功能及界面设计上以信息清晰、数据安全为前提,其具备以下功能:
具体功能为:
1.数据接口
为移动端提供各类运行数据查询,如停车场位置、空车位、停车纪录,同时也为移动端的信息存储。
2.用户管理
管理所用已经注册的用户详细信息。
3.第三方接口
可以为系统提供服务的第三方接口,如支付接口、短信接口等。
4.应用统计
了解应用的使用情况,确定应用的运行情况,以及为后继功能改进提供依据。
5.数据推送
从服务端向用户推送各类信息,包括广告、引导信息等。
6.相关数据管理
管理平台车场及停车位以外的数据,如周边商户、加油站、修车行等信息。
未来可建立独立前端由商户自行加入信息功能。
7.道尔云平台数据同步
用于将Web服务器与道尔云平台的运营数据进行同步,保证其手机端获取到的数据与道尔云平台的数据一致。
移动端,其面对的是最终用户,在功能及界面设计上以简洁易用为前提,同时由于移动端涉及到多平台(iOS/Android/WP),在遵守平台界面规则的原则下保持功能引导的一致性。移动端具备以下功能:
具体功能为:
1.找车位
基于地理位置的原理查找周边有空车位的停车场,这里需要使用百度地图。
2.找商户
与找车位功能原理一样,不过这里找是加油站或修车行。
3.支付
整合第三方支付接口,用于支付停车费。
4.用户信息
具体指用户的车辆信息、订单消费纪录等。
系统参数分析:
系统并发数
本系统为提供郑州本地机动车司机使用,根据新闻报道,郑州本地至2014年12月24日,机动车保有量为万辆,其中市区万辆。根据通常的并发计算模型:
1)并发用户数: C = nL/T
上式中,C是平均的并发用户数;n是登陆系统的用户;L是用户使用系统平均时间长度;T指考察的时间段长度。
依据上面的模型:
2790000 * 5 / 720 = 19375
上述计算描述为此App有279万用户,每天使用5分种系统功能,且用户使用集中在12小时(720=12*60)内,则每分钟的并发数大约在20000。
服务端架构
考虑到系统并发数和可扩展性,服务端系统做如下系统设计:
整个系统是基于Linux平台为基础,运用成熟软件及相关方案。从上向下来说:
1.MySQL,世界上使用最广泛的开源数据库,在数以万计的网站与系统使用
其做为数据存储,拥有完善的双机热备解决方案,曾达到过单表过亿的
存储纪录。
2.Apache+PHP,最成熟的应用服务器架构之一。Apache是目前最流行的Web
应用服务器,占据了互联网应用服务器70%以上的份额,它具有稳定、性
能卓越且扩展性强。PHP,着名的服务端开发语言之一,具有使用简单、
运行高效、跨平台性、占用资源少等特点,同时其面向对象的特性更便
于程序设计。
3.Nginx,一个很强大的高性能Web和反向代理服务器,具有强大的并发处
理能力。在静态内容较多的情况下使用其替代Apache作为Web服务器可
以获得较高的并发效果。在本项目中,主要使用的是其卓越的反向代理
能力,对整个系统进行负载均衡。
本系统在设计的特点是:
1)可扩展性,这是本系统的重点,在设计时,使各部分功能独立,使其易
于扩展。在系统建设初期,从成本和系统简单角度考虑,可直接使用单
台应用服务器,暂不引入负载均衡服务器。在负载上来之后,再引入负
载均衡,而且引入的过程中并不需要对原有系统的编码进行任何修改就
可以进行负载的扩充。
2)稳定性,本系统采用的相关技术和方案均被广泛的使用过,且都经过长
时间的运行。
3)安全性,本系统从操作系统到应用软件再到编程语言都是开源的,具有
广泛的安全性。
4)低成本,所使用的软件均为免费软件,可有效降低系统建设成本。
手机端架构
手机端开发时主要需要面临的问题是多平台多版本不同尺寸屏幕的适配。考虑到开发进度和成本的控制,本项目将采用以Titanium 为基础框架。Titanium 是跨平台移动应用开发框架,使用javascript、CSS开发移动平台原生应用。
Titanium借助统一的JavaScript API、针对特定平台的功能特性以及原生性能,实现代码重用。在编写Titanium应用程序时,其实是用JavaScript来编写原生应用程序。Titanium被视作是一种用来编写原生应用程序的框架,其工作原理如下。
使用Titanium的特点是:
1)快速的原型开发,可以高效的开发出多平台应用。
2)使用平台相关UI控件,使用Javascript就可以创建及使用平台原生控件的
应用。
3)高效的应用,由上原理图也可以看出,事实上应用是使用原生代码编译的,
其执行效果也是原生应用的效果,不存在一般HTML5开发的移动应用所存在的效率问题。
4)可扩展性,Titanium拥有完整的可扩展机制,可以分别为各平台定制相应的
模块,以适应应用的需求。
5)模块化的设计,Titanium拥有清晰的MVC架构,可以更便于应用的设计。
在本项目的手机端应用中,还涉及到另三个第三方模块。
1.地图模块,本项目将使用baidu map api,baidu map api在国内诸多地图
API接口中,有着完善的文档和示例,且其完善的CDN分布可有助于本项目应用的使用。同时需要将其包装成为Titanium模块,供应用使用。
2.统计模块,本项目经过权衡,最终选择友盟,友盟统计分析平台是国内最大
的移动应用统计分析平台。帮助移动应用开发商统计和分析流量来源、内容使用、用户属性和行为数据,为后期产品、运营、推广策略提供参考和决策。
此模块也需要包装成为Titanium模块,供应用使用。
3.支付模块,支付宝是目前使用最广泛的第三方支付产品,本项目将接入支付
宝模块。同时此模块需要包装成为Titanium模块,供应用使用。