论文部分内容阅读
在互联网+的大背景下,电动自行车充电桩朝着智慧、互联的方向转型。市场上出现了很多联网式充电桩,通过设备联网,提供多样化的智慧服务。但是现有联网式充电系统存在一些问题:在提供邻近充电桩查询服务时,大多根据用户与充电桩之间的距离进行筛选,在数据量大的情况下效率低;充电系统对于高并发访问支持不足,高峰时段服务不稳定。本文设计实现了一套电动自行车智能充电系统,并对以上两个问题进行深入研究,提出了解决方案。系统包括硬件主控板设计、GPRS通信模块设计、云平台搭建及应用软件开发。硬件部分设计有过流、过载、短路保护功能,实现安全充电;根据不同的人员角色,开发了移动用户端、移动运维端和Web管理平台,分别满足充电用户、运维人员及企业管理员的需求。对邻近充电桩搜索方法进行优化,引入空间查询,在现有空间索引的基础上进行改进,设计了基于四叉树网格划分的邻近充电桩快速搜索算法,并改进Geo Hash编码得到B-Geo Hash编码,对充电桩进行编码,实现坐标数据降维。搜索时分为剪枝和过滤两个阶段,剪枝阶段根据目标近似形体与网格的空间关系,利用B-Geo Hash编码前缀一致的特性,从大量数据中快速筛选出可能的目标集合;过滤阶段用球面距离对目标集合进行精准过滤。经过测试,该算法在30万数据量时也可以1秒内得到结果,所用时间比计算两点间距离的常规筛选方法缩短了84%。针对高并发情况下大量重复的数据库操作造成系统响应速度降低的问题,从服务器缓存入手,设计了一种改进的JDBC查询缓存机制。对JDBC接口进行扩展,将SQL结果集缓存在业务服务器的内存中,下次请求时,对请求进行过滤,如果缓存中存在对应结果集则直接读取,避免重复的数据库操作,减轻了系统压力。对缓存容量达到阈值时的缓存置换策略进行研究,改进了LRU算法,提高了缓存命中率。同时设计了缓存一致性维护策略,保证缓存数据的准确。改进的JDBC缓存机制减少了服务器连接数据库的次数,有着更高的缓存命中率,实验表明,该机制可以将系统的响应速度提高一倍,具有良好的性能。