# bike
共享单车项目
# 架构图
![Image](https://github.com/lazy-apple/bike/blob/master/images/1.png)
# 小程序首页
![Image](https://github.com/lazy-apple/bike/blob/master/images/111.png)
![Image](https://github.com/lazy-apple/bike/blob/master/images/222.png)
# 用户注册
![Image](https://github.com/lazy-apple/bike/blob/master/images/注册1.png)
![Image](https://github.com/lazy-apple/bike/blob/master/images/注册2.png)
![Image](https://github.com/lazy-apple/bike/blob/master/images/押金.png)
# 广告和充值
![Image](https://github.com/lazy-apple/bike/blob/master/images/add.png)
![Image](https://github.com/lazy-apple/bike/blob/master/images/充值.png)
# 技术架构:
1. Hadoop HA集群 + Zookeeper 进行集群配置、管理
2. Kafka集群 + Flume + Hive 进行数据采集、存储
3. SparkStreaming + SparkSQL 进行数据清洗、分析
4. Nginx负载均衡、反向代理服务器
5. MySQL集群 + MongoDB集群 + Redis集群
6. SpringBoot+微信小程序
# 项目描述:
1. 用户可以查看周围单车,并通过扫码进行使用。
2. 首次使用的用户需要注册并绑定相关信息。
3. 用户还可以选择账户充值、单车报修、参加广告活动相关业务。
4. 通过记录的日志对用户以及城市对共享单车的使用进行分析。
5. 通过后台管理页面查看当前存储的数据和最终如下统计结果:
a) 每日、不同地区、不同终端设备用户访问量。
b) 不同地区、不同终端设备用户单车使用情况
c) 不同地区单车损坏情况
d) 不同地区用户对广告活动的点击量
e) 每日、不同地区、不同终端充值情况
f) ……
# 详细流程:
1. 加载页面时埋点记录log,发送(用户appid,log,lat,时间,省市区,终端类型)
2. 存在两台nginx反向代理服务器:一台作为日志采集服务器,一台作为业务系统负载均衡服务器(三台tomcat处理业务)。
3. 首次打开页面会根据MongoDB的geohash算法获取用户五百米范围内的单车。
4. 用户状态分为:0未注册、1绑定手机号、2已交押金、3绑定身份证。
5. 首次点击扫码会跳转到注册页面。
6. 用户填写手机号,请求后台发送验证码,后台生成4位随机验证码保存到redis中(key:手机号,value:验证码),有效时长120秒,发送给用户。
7. 用户验证码匹配正确后,将用户数据保存到MongoDB中。
8. 用户交押金、绑定身份证后更新用户状态、更新用户信息。
9. 用户点击充值按钮,充值成功后,通过埋点给日志采集服务器发送日志(所在地区,经纬度,手机号,appid,金额)。
10. 用户点击保修,埋点记录log(所在地区,经纬度)
11. 用户点击广告,埋点记录log(所在地区,appid,手机号,活动编号,时间,经纬度)
12. nginx日志采集服务器集成kafka,将日志发送到kafka的topic中。
13. sparkStreaming从kafka中拉取数据实时计算进行数据清洗(json转cvs)保存到hive的分区表中
14. 使用linux的调度机制,定时添加分区。
15. 配置两个flume,flum使用kafka channel 和 hdfs sink 保存日志到hdfs。由于同一个消费者组,不会重复记录日志。
16. 使用sparkSQL集成hive、MongoDB进行数据分析。
17. 数据分析结果保存到MySQL集群。
热爱技术。
- 粉丝: 2845
- 资源: 7864
最新资源
- 在MATLAB中用物理神经网络求解质量-弹簧-阻尼器系统.rar
- 展望汉密尔顿蒙特卡罗,matlab代码.rar
- 这是对移动自组网智能天线和全向天线进行比较Matlab代码.rar
- 直流电机控制器级联设计的有效性 matlab代码.rar
- Android Studio Ladybug(android-studio-2024.2.1.12-mac.zip.001)
- 西门子TIA FB285功能块使用手册
- ERP MES 两套系统源代码 WPF AGV C# WPF开发 A,WPF MES 上位机产线执行系统 1, 完整纯源代码; 2, AGV自动调度; 3, SQLSERVER数据库 带附加文件
- 大数据技术领域中hadoop分布式系统的架构与应用
- Unity简单UI动画制作
- tomcat安装及配置教程-跨平台Tomcat安装配置教程:从零开始部署Web服务器
- 微软常用运行库合集2019.03
- Android Studio Ladybug(android-studio-2024.2.1.12-mac-arm.zip.002)
- selenium在Web应用自动化测试中的应用与优势
- 121m 纯电动汽车Simulink仿真模型建模详细步骤 通过文档的形式,跟着文档一步一步操作,既可以提高自己的建模能力,又可以对整个建模思路进行借鉴,形成设计能力 附带模型 丶
- 沾锡机半自动上料机设备3D图纸和工程图机械结构设计图纸和其它技术资料和技术方案非常好100%好用.zip
- TMC5160、TMC5130高性能步进电机驱动代码 代码都已长时间验证,稳定可靠运行 图里资料就是到手资料 简介: 德国TMC步进电机驱动代码 送你OrCAD或者AD版本原理图 自己整个重新写的
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈