程序汪8万块的饮水机物联网私活项目经验分享
本文章来自程序汪的项目亲身经历,希望给大家一些经验参考
视频版本请到B站 【我是程序汪】观看
项目背景
很多朋友上学时应该见过,那种饮水机刷卡喝水的吧。不要问我为什么学校喝水也要钱,现在什么不要钱哦。
本项目就是跟学校合作的项目,商家有点小创新这次充值用微信小程序就行,是预付费的,就像电话卡一样,充多少用多少,另外有一个定制水杯(代替以前的卡),水杯放到饮水机上出水。
特点
以前的卡变定制水杯,水杯底部有芯片的
充值变方便了,微信小程序自己充值,预付费的
饮水机当然是厂家定制的
项目构成
硬件部分,鉴权余额然后出水
tcp服务,处理硬件的消息然后转发到web服务上
web服务,小程序和PC端后台管理系统
硬件---》tcp服务-----》web服务
小程序
PC管理系统
项目中难点tcp
程序汪那个饮水机物联网项目中tcp服务器那块知识点
书推荐看这个《TCP/IP协议详解》
建议大家学习下面知识
B站学习地址 推荐PC端打开:https://b23.tv/bhrLdb
学习源码地址:
复制这段内容后打开百度网盘手机App,操作更方便哦
链接:https://pan.baidu.com/s/1Xbx-fLZ-jCLRTWy4if9mUg
提取码:910e
--来自百度网盘超级会员V4的分享
项目部分截图
程序汪项目中部分资料
我也不是搞嵌入式开发的,大家有兴趣自己研究研究吧
mysql金额字段设计
关于并发
目前这个项目没多少并发量点,虽然学生很多,但是饮水机就这么几台哦
学校里大家都懂的,干什么都要排队,所以前期并发问题不大
关于加钱
什么缓存redis ,nginx负载均衡 前期都没有引入,打算二期引入
当然得加钱拉
开发注意
1. 故障上报 断电 水流中断电, 硬件消息会保存本地 消息会重试
2. 软件队列 订单第一失败 重试,失败场景 放到队列 定时轮训
3. 扣款事务( 定单+扣款),这个是常识
4. 钱mysql 字段 column_name DECIMAL(P,D) 精确到分
私活合作加微信:itwang007
Java项目分享一个分享有意思项目的地方
点下方原文链接观看视频版本