1. 立项背景与目标
背景:
中国是两轮电动车的保有量大国。政府大力推动智能充电桩进社区、进园区,以技防代替人防,市场迎来爆发式增长。我司决定研发一个面向两轮充电市场的、集用户服务、商户运营、设备管理于一体的智能化SaaS平台。
目标:
对用户(C端):提供最便捷、最安全的充电体验。
对商户/运营商(B端): 提供一套“开箱即用、免运维”的SaaS化管理平台。
对公司(平台方): 打造行业领先的物联网PaaS平台,通过设备接入、SaaS服务、支付分账三大核心能力,构建平台生态。
2. 软件功能与核心模块介绍
平台采用微服务架构,确保高可用、高并发和易扩展性,主要分为四大核心板块:
2.1 C端用户服务模块 (微信小程序)
找桩导航: 基于地理位置展示周边充电站点的空闲插座数量、价格、距离,支持导航。
灵活支付与营销: 支持微信支付、支付宝、充值余额等多种方式。集成优惠券、充值赠送、会员折扣等营销工具。
充电实时监控: 实时查看充电状态、已充时长、消费金额,支持远程续充和手动停止。
安全预警与保险: 充电异常(如过载、断电)实时推送提醒,并可引入充电险,提升用户安全感。
2.2 B端商户SaaS管理模块 (PC Web管理后台)
多维价格策略管理: 支持按功率、时长、电量等多种计费模式,可设置分时电价(如峰、谷、平),满足不同场景需求。
资产与设备监控: 可视化管理所有充电桩和插座,实时监控其在线/离线、空闲/使用中/故障状态,支持远程重启、固件升级。
自动化财务分账: 系统自动按日、周、月生成收益报表,并支持根据预设比例与物业等合作方进行自动化分账结算,简化对账流程。
2.3 设备接入与协议通信模块 (IoT物联网中台)
连接管理与状态同步: 维护与海量充电桩的稳定长连接,处理心跳检测、断线重连,确保设备状态实时同步至平台。
指令精准下发: 向设备发送启动充电、停止充电、校准时间、调整功率阈值等控制指令,要求高可靠性。
安全与告警处理: 实时接收并处理设备上报的过载、漏电、断电、离线等安全告警事件,并触发推送和后台通知。
2.4 平台核心支撑模块
订单服务: 处理充电订单的生成、计费(根据复杂的计费规则)、结束和状态管理。
支付与分账服务: 对接支付渠道,处理支付、退款,并执行与商户、渠道方的自动化分账逻辑。
用户认证与授权: 管理C端用户、B端商户、运维人员等多端身份的认证和权限控制。
1. 整体架构与设计思路
1.1 设计思路
我们的核心设计目标是构建一个高并发、高可用、易扩展的物联网SaaS平台。面临的主要挑战是:海量设备长连接管理、不同硬件厂商的协议兼容、订单与设备状态的强一致性,以及灵活的分账策略。我们采用了 “前后端分离 + 微服务化” 的架构思想,将系统解耦,使各服务能够独立开发、部署和扩容。
2. 我的负责模块与量化结果
作为核心后端开发工程师,我主要负责了设备接入与通信中台和订单与支付服务的设计与实现。
2.1 负责模块一:设备接入与通信中台 (IoT Core)
工作内容:
1.基于设备自身协议实现了高性能的TCP长连接服务,作为设备接入的入口。
2.对接其他平台设备(MQTT协议)。
3.实现了设备心跳检测、断线重连、指令重发等机制,保障通信链路的可靠性。
4.将设备实时状态(在线/离线/使用中)同步至Redis,供API网关和业务服务高效查询。
量化结果:
连接规模:成功支撑了50,000+ 台充电设备的稳定长连接,平均心跳间隔30秒。
性能提升:通过连接池和异步处理,单服务节点可承载2,000+ 台设备连接,CPU平均负载低于40%。
开发效率:协议适配器模式使新厂商设备接入周期从 2人周缩短至1人日,只需实现新的编解码器即可。
2.2 负责模块二:订单与支付服务 (Order & Payment Service)
工作内容:
1.设计了状态机模式的订单系统,清晰管理“生成->待支付->充电中->已完成”等状态流转。
2.实现了基于实际功率的实时计费逻辑(如0-200W一个价,200-500W一个价)。
3.对接了微信支付,处理支付回调,并基于MQ消息驱动订单状态变更。
4.参与了每日自动分账功能的开发,通过定时任务统计订单,按比例计算商户收入。
量化结果:
处理量:系统日均处理30,000+ 个充电订单,支付成功率达99.98%。
准确性:计费模块实现了100% 的财务准确性,未发生因代码bug导致的资损事件。
稳定性:通过Sentinel对支付回调接口进行限流保护,成功应对了节假日高峰流量,未出现宕机。