本文章來自程式汪的專案親身經歷,希望給大家一些經驗參考
影片版本請到B站 【我是程式汪】觀看
專案背景
很多朋友上學時應該見過,那種飲水機刷卡喝水的吧。不要問我為什麼學校喝水也要錢,現在什麼不要錢哦。
本專案就是跟學校合作的專案,商家有點小創新這次充值用微信小程式就行,是預付費的,就像電話卡一樣,充多少用多少,另外有一個定製水杯(代替以前的卡),水杯放到飲水機上出水。
特點
- 以前的卡變定製水杯,水杯底部有晶片的
- 充值變方便了,微信小程式自己充值,預付費的
- 飲水機當然是廠家定製的
專案構成
- 硬體部分,鑑權餘額然後出水
- tcp服務,處理硬體的訊息然後轉發到web服務上
- web服務,小程式和PC端後臺管理系統
硬體---》tcp服務-----》web服務
小程式
PC管理系統
專案中難點tcp
程式汪那個飲水機物聯網專案中tcp伺服器那塊知識點
書推薦看這個《TCP/IP協議詳解》
建議大家學習下面知識
專案部分截圖
程式汪專案中部分資料
我也不是搞嵌入式開發的,大家有興趣自己研究研究吧
mysql金額欄位設計
關於併發
目前這個專案沒多少併發量點,雖然學生很多,但是飲水機就這麼幾臺哦
學校裡大家都懂的,幹什麼都要排隊,所以前期併發問題不大
關於加錢
什麼快取redis ,nginx負載均衡 前期都沒有引入,打算二期引入
當然得加錢拉
開發注意
1. 故障上報 斷電 水流中斷電, 硬體訊息會儲存本地 訊息會重試
2. 軟體佇列 訂單第一失敗 重試,失敗場景 放到佇列 定時輪訓
3. 扣款事務( 定單+扣款),這個是常識
4. 錢mysql 欄位 column_name DECIMAL(P,D) 精確到分
程式汪歷史私活專案分享
老程式設計師3萬元接的口罩專案,開發週期10天,真香
程式汪6萬接的旅遊小程式,需要跟人臉閘機對接
程式汪10萬接的垃圾回收小程式,開發2個月
程式汪6萬接的汽車配件APP專案,開發週期40天
本文章原創首發 Java專案分享
https://mp.weixin.qq.com/s/GQLE77hjvXXFj8AphZhHgA