"软硬件环境说明1"
本文主要介绍了基于Wifi探针的数据分析系统的软硬件配置及技术选型。该系统旨在处理和分析Wifi探针发送的JSON数据,利用分布式计算进行高效的数据处理,并通过Web系统提供数据分析结果。
在软件环境方面,系统采用了以下关键组件和技术:
1. **Receiver**:此部分负责接收来自Wifi探针的JSON数据,通过负载均衡服务器处理,确保数据上传的稳定性和效率。Receiver会异步缓存接收到的数据,每20分钟将所有数据整合成大文件并传输至HDFS文件系统。
2. **Hadoop平台**:基于Hadoop2.7.1,作为分布式系统的基础架构,用于大数据的存储和处理。数据被循环地进行统计分析。
3. **Web系统**:采用SpringBoot1.5.2.RELEASE构建,提供计时调度服务,从Hadoop平台读取分析结果,并将这些结果存储到MySQL关系型数据库中,以便在用户请求时快速响应。
4. **开发语言**:主要使用Java(版本1.8及以上)和JavaScript(支持ES6语法)。Java用于后端服务开发,JavaScript用于前端界面交互。
5. **开源框架与工具**:
- SpringDataJPA1.5.2:简化JPA(Java Persistence API)操作,用于数据持久层。
- Guava19.0:提供一系列核心Java类库,提高开发效率。
- SpringSecurity4.2.1.RELEASE:用于REST请求的权限控制。
- Swagger2.0:展示RESTful API接口文档,方便开发者理解和使用。
- Selenium2.9.1:用于界面自动化测试。
- Jmeter2.11:进行性能测试,检查系统在高并发情况下的表现。
6. **前端框架与数据流**:前端部分采用基于Redux、redux-saga和react-router@2.x的轻量级框架DVA。数据流遵循清晰的模式:用户交互或浏览器行为触发action,同步行为通过reducers直接改变State,异步行为则通过Effects再到reducers。DVA的设计理念与开源社区保持一致,提供高效的前端数据管理。
7. **数据库**:系统使用MySQL作为关系型数据库,存储Web系统从Hadoop获取的分析结果。
8. **硬件环境**:
- 接收服务器:共两台,一台配备2核2GB内存,另一台1核1GB内存。
- Web服务器:1台,配置为2核2GB内存。
- MySQL数据库服务器:1台,配置为1核1GB内存。
- Hadoop集群:包含1个Master节点(2核2GB内存)和2个Slave节点(各1核1GB内存)。
- Wifi探针:用于采集移动设备的无线信号信息,是数据来源。
这套软硬件配置和架构设计,旨在实现高效的数据接收、存储、处理和展示,为基于Wifi探针的数据分析提供了一个稳定且可扩展的平台。