过磅微服务架构整理

现状

目前市面上过磅软件基本和十年前的没有什么变化,基本还都是C/S模式,这里的C/S不是Client/Server,而是Client/SQL Server,本地装一个SQL Server数据库,安全稳定都谈不上,客户也是真不懂,花大钱买的软件无法更新,没有售后,不能跟随业务变化进行优化升级。
云智磅ERP是钉钉上架的一款SaaS模式的过磅软件,以每年收取服务费方式对客户提供优质服务。
云智磅目前版本也是C/S模式,这里的S是直接调用Web服务器,electron做底座,界面用Vue开发的,客户端原来用C#写过一个,后来用QT写过一个,相同的缺点,界面有些丑,技术栈多,不利于小团队做,
底座提供自动更新、打印、控制IO设备、车号识别、视频预览、抓拍图片、语音播报及读取仪表串口数据功能。
Vue编写无人值守过磅业务逻辑部分,用状态机控制过磅流程,Vue页面部署在远端服务器,如果有功能更新,修补Bug,无需重新打包客户端,直接刷新页面即可。
过磅微服务架构整理_第1张图片
过磅微服务架构整理_第2张图片

存在的问题

  • 客户端过磅业务逻辑在客户端软件中,很多数据没有上云,仅仅是将最终过磅记录发送到服务器,磅重变化历史数据丢失。
  • 客户端电脑容易发生故障,经常有断网、串口松动、客户端电脑中毒等问题。 目前不能实时查看客户过磅情况,对客户端电脑健康状况无法监控。
  • 无法对客户端过磅端发送数据,不能做干预和操控。

重构

过磅微服务架构整理_第3张图片

过磅云端微服务

  1. WebSocket服务
  2. 打印模板(需要从base中移到weigh中)
  3. 创建管理客户端,管理设备信息、配置管理(需要从v1中移到weight中)
  4. 过磅业务
    过磅微服务架构整理_第4张图片

服务端采用COLA框架,通过负载均衡保证分布式高可用。

electron底座功能

  1. 自动更新
  2. 根据DeviceName读取setting配置
  3. 打印(串口打印、web模板打印)
  4. io控制器
  5. 车号识别(海康、post请求)
  6. 语音播报
  7. 重量串口数据

web过磅页面功能:

  1. aliyunIot,是否可以移到底座?
  2. 封装打印?(能否移到底座)
  3. 图片上传?(能否移到底座,调用sdk抓拍?)
  4. 称重数据解析(能否移到底座)

阿里云物联网平台

  1. 提供设备属性变更、事件上报、状态变更等消息队列服务。
  2. 为云端提供与设备通讯协议。
  3. 简化物联网设备开发难度,提供物模型及物模型SDK。

云智磅ERP是钉钉上架的一款SaaS模式的过磅软件,8个人的小团队。

你可能感兴趣的:(架构,java,物联网,大数据,web,spring)